Last week I completed 5 years as a full-time software engineer. In this article, I reflect upon my learnings so far

1. Communication

Most of what we do as a software developer is abstract. Having the ability to put your mental models into words and diagrams is highly valuable. Invest as much as you can on this.

2. Coding is not that important

You get paid for code. You get paid disproportionately for deciding what not to code and debugging. Both of which are self-taught skills and grow with experience.

3. Recognise the physical hazards of your profession

Don’t be fooled by the swanky offices and free snacks. Software engineering is a very challenging profession. Both physically and mentally. It demands extended hours of sitting on the desk and staring at a screen. Bad posture and unhealthy lifestyle leading to cervical, migraines, reduced immunity are very real problems I have faced while still being in my early 20’s.

4. Recognise the mental hazards of your profession

You have to learn to take care of mental health if you want to be here for the long run. I realised this very late and have been making amends ever since.

5. Continuous learning

Continuous learning is not just a good to have skill, but a non-optional job requirement to be a software developer.

6. Build in iterations

Work in iterations and not in long stretches. Trying to get the product right on the first go is always a bad strategy. It’s easier to grasp the problem with a rough structure rather than going down the rabbit hole.

7. Software systems are messy and unreliable

It is funny how restarting the system is still the no. 1 problem solver and having backups (replication) is the best way to make things more reliable.

8. Wait and respond, don’t react

Promptness in response, whether to a situation or an email is desirable. But sometimes sitting on a problem for a while, giving time to people to correct their response is also good.

9. Measuring career growth in $$

Your monthly take-home is probably the least important metric you should measure your career growth in. Especially during the initial years. The annual raise you missed now is nothing compared to the bonus you will get in the future. Personal satisfaction, learning opportunities, office environment are better things to strive for.

10. Gratitude

Getting paid to build cool stuff, while learning new things. Being around so many amazingly talented people and such a helpful community. These are the real privileges of being in this field.

Express gratitude and enjoy it!


also published on medium