Tips for a good career

These are my opinionated tips on achieving a good career

A career in software is very much like playing pool: don’t just think of playing the current ball, think how you’ll play the next ball and how you can lead up to that in the most effective way

Just pretend that’s it’s a meritocracy

Keep grafting and adopt the idea of “all you need to do is work hard” even though opportunity does not present itself equally to all people and there is a high probability that no one will care about, or even notice, your effort

Don’t adopt the attitude of slacking off because you feel the system is rigged somehow. The concept of a meritocracy is a good idea and just pretend that a meritocracy exists everywhere

Most people's success comes from assistance from someone coming before them. This can be in the form of a high-positioned job or entrance into a prestigious university. The statistics that support this statement are very compelling but just pretend that this is not the case

Don’t let this dampen your attitude towards hard work. Be sure to succeed in achieving your career goals and be the first person to say that you started all on your own, right from the beginning, right at zero

If you aren’t appreciated, find a new job

If you are unhappy with your job or how you are treated, don’t settle. Settling is the worst approach you can take in this scenario and if you do decide to settle, whether it’s due to fear of not finding a better job or if you only care about the experience section on your CV, then you are the only person to blame

I’ve worked for a company where my technical input was not appreciated and was far past the comprehension of the decision makers. They wanted a lemming that did not think for himself and a lemming that was able to look past fairly significant architectural flaws that existed in the application. This is simply not me

I can’t pretend that massive issues don’t not exist when they clearly do. What made this even worse is that these issues resulted in exactly what I expected them to and most of the time this was swept under the rug and only the owner of the business new the truth about had happened

After a lot of thought, I decided to resign and I found myself in a much better position! My new job is an order of magnitude more interesting and the people I work with actually understand how technology should work. I’m also able to work in a way that makes the most sense to me

Moral of the story: if you aren’t appreciated or if your input is not valued at the company you are currently working at, go find a new company to work at and don’t stop until you do

Move up the ladder if you have mastered your current job description

What you don’t want to do is iterate over the same set of challenges. When you are handed a new project and you can initially predict exactly what the problems are going to be and exactly how they should be solved then this good indicator that you have mastered your current job description

If you are in this state, you should be feeling at the crossroads. It’s good for your career in the sense that you can be seen as a senior in the field and this can ship with a good salary and an ability to invoke change but where this can concerning is that you might not be learning like you once did and what you don’t want to have happen is any type of skill atrophy

What I would recommend you do to avoid skill atrophy is to look up the ladder and try to move onto something more challenging. Not necessarily in a management position but in something where you’ll be exposed to a new set of challenges. Make sure you that you do keep your specialised skills so these new challenges must be a logical extension of what you have mastered

If going up the ladder means moving into a management position, then this is fine too. Learning how people work can be a new challenge and you can also assist other people with their career goals and aspirations

Moving up the ladder does not have to be instant and often it will require careful planning but just keep this concept in mind

A personal example of moving up the ladder is my career in DevOps engineering: I can see the next step in my career as moving into full-stack web application development–which is basically what I do already but I can work on getting this as my job title

Don’t pretend to know more than you actually do

Know what your weak points are and acknowledge that they need work. Signification weak points might need the long-term approach to solve and this is perfectly fine. As the age-old saying goes: “Rome was not built in a day”

What you can do in the meantime is find the job that is most suited for your current skill set and make sure you are on the path to your desired state

Here are some free resources that I use a lot for learning:

Skill is extremely important but even if you are lacking in certain areas, you can still be of great value to a company

Get yourself formally assessed

It might be useful for you to be formally assessed and determine what your shortcomings and strengths are. It will at-least give you some indicator as to what needs to be worked on

You’ll already know what your technical skill shortcomings are so I’d recommend that you factor in your soft skills too

Gallup CliftonStrengths | assessment

This was actually an interesting assessment. It included an activity that was facilitated by two career coaches

It was most certainly a useful assessment and I do agree with the result, for the most part | result

This was actually a hidden IQ test that I did not get the full results of (not sure what that means)

Like the CliftonStrengths assessment, this also gives me useful insight into how my mind works (or doesn’t work for that matter)

Don’t be afraid of failure and keeping trying until you succeed

If your career goal is to have some deciding influence at a big company or having a few paid customers on your startup’s SaaS product, then the concept of persistence really applies here. The bigger your goals, the more likely you are to fail and there is nothing wrong with this

Make sure you become immune to embarrassment and ensure you don’t care about the negative opinion of others. All you need to do is keep failing until you succeed and you might only need to succeed once to achieve complete victory!

Have a Plan B but don’t use it

There is nothing wrong with having a Plan B when it comes to a career path

An example of having a Plan B would be having a fall-back salaried position if your startup fails or having an effective mechanism you can use to find new employment if something goes wrong with your job

LinkedIn is a great place to build up a database of recruiters and you can always contact them when you need a job. I also maintain my own database of people that have wanted to hire me. I’d recommend that you do this as well (you can’t have too much of this information) and you’d know that it’s safe if you own it

Make sure your Plan A works though. Don’t use this fall-back as justification for slacking off, it’s to be used for emergency purposes only

Don’t lose sight of the end result

This concept may be difficult to get a grip on when you find yourself deep in the weeds but it’s very important that you do. Don’t lose sight of the end result and what you are trying to achieve with your career, ever

There are plenty of negative things that can make you feel that you are deep in the weeds. You might feel this way after you have had a fight with your boss or if that simple bug fix turned into a massive security issue and it shouldn’t have (this example does not relate to me personally). Your end goals are much more important than lingering on these feelings

I’d recommend Mindfulness or Vipassana meditation if you would like to learn how to handle your feelings. Vipassana meditation will get you to pay attention to what your feelings actually feel like and to not follow what your feelings are trying to get you to do