Once you get started on an IT career with even the lowest end job, you have opportunities to learn every day. This form of on the job training is critical to keeping up in this fast moving area. Better yet, you can squeeze some extra training out of your job that allows for more free time and enjoyment of life. There are some plans to make and challenges to overcome in making the most of these opportunities.
The first challenge I want to pose is to create an education plan of some sort. This does not have to be a formal document of hundreds of pages. Instead, it can be a short checklist of critical topics and learning targets. Tackle this just like any other project you are handed. Start with the big items and goals then break those down into small enough goals that you can make progress on a weekly basis at least. We will use this list to find ways that we can check off learning topics in our ordinary course of work.
Building The List
Let’s return to Chris the Developer and look into how a learning list is created. It might provide some useful examples for you. The big goals for Chris this year are to learn about databases and web development. These are very general, but still good goals for someone starting out. As we will see, these broad goals are also easier to achieve than ones that are more focused.
In this case, these are goals that can fill up a year of learning. That is a good range of time to allow for progress without getting too stressed when a week or two goes by without making headway in our chosen areas. You want to always have active learning goals without feeling overwhelmed by “all you have to do.”
Finding the Opportunities
The way to build your skills on the job is very much like how we select projects. Here is the approach Chris should take. When the opportunity comes up to do a database or web development task, Chris needs to grab it. An Agile shop is easier to do this in than waterfall as you just need to select the desired functions from the board. In a pair-programming situation try to partner with someone that you can lean on for your desired skills. Chris would want to be paired with a web or DB expert, but be in the driver’s seat to help keep the pace down to a level that is conducive to learning.
A waterfall shop is not the same, but Chris would still want to volunteer for portions of coding that are in the desired areas. The key is to not worry about being “less productive” in these new areas. When you have to spend a little more time to get the job done, there is a payoff. You are also expanding your skill sets and making that time count.
Keep Your Options Open
When direct roles are not available then look for support roles that can be a ticket to learning those skills. For example, Chris is in a situation where everyone has their area of focus. Chris is assigned the middle tier and not able to code front-end web work or on the back-end database. There might be code review opportunities to look over and discuss these areas or cross-functional testing. There are always opportunities like these to expand into new areas. You just have to be on the lookout for them.
Finally, do not be afraid to lay out these goals to your manager or boss. Annual reviews are becoming less frequent, but that does not mean you have to give up on goal-setting in your job. Talk about what you want to learn and why. Any good manager will help you find avenues to accomplish these sort of goals as they support the team and company as much as they do you.