Late in 2016, I made a conscious decision to become a full stack engineer. It was a tough decision for me because it meant a career reset and came with some risk. I would also have to learn a lot and fast too to be an effective contributor.
Why did I want to change?
- Most of my front-end engineering tasks had become rote. I enjoy taking on difficult challenges and some of my tasks were becoming repetitive (make AJAX call, design layout, show data, add animations, repeat).
- I had fewer opportunities to apply computer science principles to my daily work.
- I wanted exposure to new problem domains and more challenges. Such a switch would provide opportunities to grow and become better; and who doesn’t want to grow?
My management chain was quite helpful and understanding – my immediate manager made sure I was aware of the challenges and career implications of the change. Then, they all made sure I got all the support and opportunity I required to be successful.
Looking back, I can say I am very grateful that it all worked out. It wasn’t all rosy though – some days were extremely tough.
It is possible to have 10 years of experience doing the same thing. This leads to a false sense of mastery and then one day you realize you have outdated skills.
It is easy to keep doing the same thing and avoid taking new challenges; however, to grow it is essential to step out of one’s comfort zone. This may be humiliating (especially when you make schoolboy mistakes) and can be difficult, but it is a great way to acquire new skills in a wide variety of areas you probably never thought of.
You will learn the new stuff as well as how to interact with people, how to cope with stress, how to deal with humans under stress; how to learn new things. It builds the resilience you need and gives you the confidence that you can take on new challenges successfully. It may be difficult getting this started but it is something I recommend now.
Seek new challenges, seek meaningful challenges.