Sometime ago, I got the opportunity to mentor someone who left IBM research after a decade or so and was having some difficulty getting hired. This was due to the fact that the tools and technologies he used at his old job were not high in demand in today’s tech market. I felt his frustration because it seemed as if hiring managers pay more attention to buzz words than software engineering skill.
He was able to finally land a job but I think he could have done more earlier to avoid this situation altogether. Following are some practical tips on this matter that I hope you also use to your advantage for not only remaining relevant — but also for getting ahead and succeeding.
Prioritize Learning and Improving over Entertainment and Fun
This is by far the most important advice you will get from me. Continuous learning is part of our job. The trick really is not to depend on your will power to learn new things, instead build habits to achieve that. Spend an hour everyday early in the morning learning new things or trying to improve in the ones you know. Spend an hour every night watching a video course or just coding. If you’re not quite sure how to build habits like that, I would highly recommend reading Charles Duhigg’s breakthrough book The Power of Habit on this topic.
Keep track of new trends and continue to explore them
Depending on your current area of expertise find what is trending. If you are struggling with topics for your learning exercise you may find my Future of Application Programming blog useful. Setup systems so you don’t have to go out of your way to get this information on a regular basis. Subscribe to Search Alerts, Medium Topics or other publications to keep abreast of whats happening and also to keep you motivated.
Work on side projects and open source them
Most top programmers I know code in their own time. If you solve a complex problem why not open source it to help others and contribute to your own brand in the process. More on this in a later post.
Develop your raw programming skill by doing Coding challenges.
If working on side projects requires too much commitment, go to sites like Hacker Rank or Career Cup and do regular coding challenges. Try a language that is very much in demand and something you are not familiar with. This is hard work but trust me it pays off.
Connect and team up with like minded people
Its easy to get started on these projects but then run out of steam quickly. Working with others will help with keeping you on track. I recommend going to Meetups or other tech gatherings at least once a month. What would be even better is if you choose to present once in while. You can read more on the importance of building communication skills on my blog.
Our industry it different, in the sense that while experience does matter — consistent learning and improving is almost a requirement. It also helps us build flexibility instead of rigidness and open mindedness instead of closed. There are always better ways to do things and consistent learning and improving is the key to staying relevant and avoid becoming outdated.