How to create an action plan for your next technology skill for a software engineer and update your resume?

Person standing on rock raising hand on top of the mountain above the clouds

The agile way of working and explosion of the open-source world has made organizations flexible and thus able to embrace the latest technology to get ahead of the competition.

As great as that sounds, it puts a lot of pressure on software engineers to remain relevant in the job market. Learning a new technology has become the survival strategy to remain relevant as a software engineer. Gone were the days when you can remain a mainframe developer for 30 years and still be relevant.

The other issue is the job descriptions that you get. Job descriptions in the technology world require you to have experience in about 10–20 technologies. It can leave you overwhelmed with the dread that you can never get a new job unless you learn everything again. You are afraid you will be stuck in your current job forever.

You can follow the steps below to stay relevant without getting overwhelmed. Applying the below steps when fear grips about learning many things will give you clear steps and a plan to achieve the desired skill set. The key steps are:

Know your why

I have a friend who is ambitious and wants to improve his value to the organization he works with. He has done many certifications, and he has transitioned to tougher challenges by learning on his own. He had done Azure certification a while back and he has plans to get the next certification. But his organization is big on AWS and gave him a free voucher to get certified in AWS. It seems the organization has done a favor for him. He has taken it onto himself and he is planning to do both AWS and Azure certification. But how much of this certification aligns with his goals is a question he needs to answer before doing them. The other question is, will the new AWS certification help him with his job?

Before picking up a course or watching a video on technology, it is important to ask yourself — why do I want to learn this? Do not stop at that answer. You need to ask yourself the why 5 times. Let me give you an example.

Me: I want to learn python 
Mirror me: Why do you want to learn python?

Me: Because it will be an excellent addition to my resume along with Java
Mirror me: What will that do to you?

Me: It will help me get a job that requires both Java and Python.
Mirror me: So what? You already have a good job with your existing skill.

Me: It will expose me to an unfamiliar work environment with fresh challenges.
Mirror me: So what? What will you achieve in an unfamiliar work environment?

Me: It will give me thrill and chills in solving problems in a new environment.

You can go deeper. But if I stop here, I know I want to learn python to solve problems in new environments and feel the thrill of doing that.

You can do this with your friend as the sounding board and this will tell you if you want to learn the new skill.

Identify learning bucket

Now that you know your why, you need to identify how does the new skill relate to your existing skillset. You can put learning new tool or technology in one of the three buckets:

Different Implementation

This is a tool or technology for which you already have a base knowledge using another tool. As in the above example with my friend, he already knows Azure, and learning AWS will be a different implementation of the same cloud concept. He can leverage existing concepts from Azure to map to similar concepts in AWS and can identify the differences and learn the skills fast.

Complementary Skills

These are skills you need to work with your primary skill. If you are a software tester, learning about CI/CD pipelines such as Jenkins would be a complementary skill. To learn a related skill, you can either learn from others in the existing projects or can spin up your own versions to play in your time. As an example, you can create your own pipeline which does simple things such as checking-out code and running tests. You do not need to know the complete in and outs of this skill and thus after a few rounds of play, you will be confident to use it at your work.

New You

This is the most difficult of the bucket to learn. The ideal time to learn a new technology is if you want to change your job profile. Like in the example above, you were playing with pipelines. You decide now that playing with pipelines is your thing and you want to become a devops engineer. It would translate to more rigorous learning as you would also need to learn the related and at least one different implementation as well.

If you move to be a DevOps engineer from being a software tester, you will need to learn all the technologies required in the core skill-set. You may need to invest in the related skill set, such as knowing one of the programming languages to understand what is getting deployed. Different organizations use different technology based on their culture and requirements. An example would be source control technology. One organization may use GitHub while other organizations may use Bitbucket. Here, you will also need to invest in learning from the “Different Technology” bucket.

Create a learning plan

This is the last step before you dive into learning the new technology. The learning bucket will determine the steps you need to take and the duration you will need.

The “Different Implementation” bucket will be the fastest, as you do not need to learn new concepts. You will apply the concepts differently to the new skill.

The “Related Skills” bucket requires you to learn a new concept, but you can tie in with what you know already so that you can play with it. You also do not need to go deep in learning, as it enhances your primary skill.

“New You” bucket takes the most time. You will need to give yourself at least a year to gain proficiency as it requires a mindset change as well.

Update resume

So once you create your learning plan, when do you put it in your resume? Or when should you apply for a job with a new skill? This will depend on which bucket a skill falls into. You can learn a skill falling in the Different Implementation bucket within a week so it can go into the resume in a week’s time.

The related skill bucket can take a couple of weeks to a couple of months for you to talk about it. Since you do not need to go deep into it, you can put it in once you are confident about its concepts.

The last bucket of a new you will take anywhere between a year to three years for it to be part of your identity. At the bare minimum, you can get paid after a year of effort, so it is not as long-term as it sounds.

Sharpen the saw

This step is from Stephen Covey’s 7 Habits of Highly Effective People. The above 4 steps are iterative. You need to spend some time once a quarter at least to identify and create learning targets. Keeping a learning mindset and implementing a learning plan puts you at the forefront of technology and gets you a rewarding career.

Conclusion

It is important to stay abreast of technological advancement. Spending time twice a week reading technology newsletters is the easiest way to stay updated. You can spend more time attending meetups. Newsletters and meetups will give you insight into what’s coming up and which technologies are people most excited about. It will feed insights to know your why step. This will kick off the next steps that you can follow, leading to clarity and a tangible goal to achieve.


The mission for you!

The key to learning anything new is by taking action. You have read so far, which means you have invested at least 5 minutes of your life. Your mission, if you wish to accept, is to take another minute and take below two steps:

Let me know once you have completed your mission and how you went with it.