9 Things I Wish I Knew As An Engineer In My Early Career

Nagaraj Tantri
5 min readJan 24, 2022

--

We always focus on what we want over what we have!

This is exactly what triggered me to think, that I never knew the importance of certain things during my initial career. Over the years I have adopted some of the right focus and this has helped me immensely.

Always find ways to enjoy your work!

Here are the items I wish I knew as a Software Engineer!

1. The latest technology today will become obsolete tomorrow

I started my career with C#, Win Form, WPF, ASP.net, JQuery, IIS7; then moved on to use JavaScript, Python and now Java, React, K8s. I still remember, when I joined my first company, I was hoping I would get a good technology to work and was not thinking on problems to solve, and then eventually ended up thinking, how can I be closer to a specific technology and never thought about, some great challenging problems. Just check the graph below to feel what I said about the programming languages shifting over the years. So I realized I should focus on solving problems rather than focusing on finding work on the latest technologies.

% of stackoverflow.com language questions per month

2. If you really want, you can learn from any engineering task

I have had my share of worries, that fixing a bug or integrating some tool were not Core development work, thus eventually ended up neglecting to learn from an actual task at hand, for example, if it is an open-source integration, can we learn how these projects are built? or how they apply some simple source code linting or auto-documentation? or how they use design principles in place? While there would be some mundane jobs of fixing bugs; try and envision to make it a complete bug-free and remarkable solution.

3. Being asked to fix something manually is an open door for automation

There were so many instances where I never tried to see beyond the part of manual interventions. I wish I had planned to automate as much as possible. There are so many ways one can use scripting to automate a mundane task at hand, like using Python or similar scripting, we could automate so much manual work. Working on an automation script is not lame, we can always make things more ecstatic and also push things in Github (it’s a win-win).

4. Stop complaining and find solutions

There was a time when I have felt bad about working on a code that had loads of bugs and trusts me; it’s no one’s mistake, software lifecycle goes through uncleared tech debts and causes many bugs. But, I forgot one thing, an Engineer should fix or build it, there is no point in complaining, so focus and put all efforts towards fixing those bugs and learn from them.

5. Respect everyone, you are not always the smartest person in the room

Sometimes, in an attempt to shine and grow, you think that you want to voice your opinion. I have done that and been wrong many times on not researching the right information or telling a senior that they have got it wrong. There are better ways to communicate! like acknowledging their inputs and then stating there could be another possibility for a solution. You should have the right attitude towards everyone’s knowledge and give them the credit for their input. Eventually, I realized I could learn from their wisdom!

6. Interact more with leaders in the company

During the early days of my career, I always thought that the leaders were not available to interact and that I would not be able to discuss anything with them. This was wrong! Had I thought about discussing the companies vision or talking about their experiences with different situations, I could have gained better insights into the larger picture. Make an attempt in discussing the vision of the project/team, understand their journey in the company or industry.

7. Pay attention to opportunities

There was a project which involved Perl Scripting for CI/CD and I ended up thinking I am not learning anything which is the latest in the software tech stack. Had I invested my time to scale the script and reduce bugs, I could have helped the company to solve things faster, could have scaled their entire DevOps pipeline. Eventually, time spent on not taming the opportunities were put into feeling bad and nothing good happened. So always try to see if there is anything that can be done better in your current work and leverage that opportunity!

8. Focus on excellence, success comes along

I have had my share of thinking that I want to be a great engineer but focused less on learning for the sake of my engineering passion and solving more problems. The famous dialogue from 3 Idiots movie is completely relatable! I fell short of applying such good thoughts, like don’t run behind the thought of, how to be successful, but focus on just learning better engineering practices or solving problems that would eventually give us the right direction and make us happy.

From 3 Idiots Movie — “Success ke peeche mat bhaago, excellence ka peecha bhaago, success jhakk marke tumhare peeche aayega”

9. Enjoy Your Work!

There is a no bigger evil than thinking you are missing something. The classic FOMO of software technologies always lurches around and one should find ways to avoid being in that zone and focus on enjoying the work. I have had my time running behind the knowledge, just to feel good that I am not missing on the technologies. I should have rather focused on scaling my current work and gotten deeper involvement in solving what lies ahead of me. So always focus on learning and work towards your passion to solve problems and Enjoy!

Conclusion

Experience matters and thus indeed comes the wisdom of doing the right thing. The above items are some things I wished I knew when I started my career, but over the years I have also learnt one more thing, i.e: It’s never late to focus on your passion and enjoy your work! Now with the right focus, it has helped me to do the best things at the right time. Over the years, once I started paying attention, it has helped me to achieve many good things in my career.

--

--