When I got into development I always knew that I would constantly need to be learning, it is one of the things that attracted me to the industry in the first place. However from time to time it gets a little too much and you may find yourself conflicted, especially in the early days. Learning cool, new and interesting things is great, but at the same time, in the early stages of your career there is a rather large opportunity cost to doing so. Let me explain.
In my last post I talked about working with a few guys from the awesome Better Developer community on a side project. I was immersing myself in all things operations, Docker, Makefile, scripting and more. Truth be told I hadn’t even touched the surface and it felt great. It was also really tough, I was trying to learn things I had zero idea about and I was doing this in the evenings after working all day. Weekends too, sacrificing time with friends and family.
Again this is great, sometimes, but what I found was that because I was struggling with a lot of it, I was doing that little bit more, going into work the next day tired and if I am honest thinking more about the previous nights work rather than the actual work at hand.
The negatives of that are pretty obvious, but what I didn’t realise was that I used to use some of that time to brush up on the skills I use day in day out. Perhaps prepping for new things I would be using at work etc, so as good as my intentions were it was potentially damaging my performance at work.
Now, don’t get me wrong, I am not here to discourage people from picking up new skills, that would be absurd. As I said at the beginning of this post, to be constantly learning and picking up new skills is a good thing - great in fact, but it is important to be aware of the opportunity cost and make sure you keep some balance. Make time for you, you deserve it. Make time to enhance your skills that you use in the day job, those after all are your bread and butter.
Righting the Ship
In the past few weeks I have re-focussed on the skills I need to do my job well, identified areas for improvement and actively spent some time on them outside of work. Very quickly I have noticed improvements in those areas, this is mainly because these skills are not super new to me, they have links to what I am already doing, which means my time spent on them has a much higher ROI.
In the few weeks I have felt a lot better at work, made some great progress with various projects and just feel much more confident in my current role, which is pretty great timing considering I have my annual review coming up in the next couple of weeks.
I’ll be Back
I am not done with the project I started working on or the operations side of things or anything like that. Going forward I will just be more careful and patient with my learning, there is no rush, these things are (really) nice to haves, which will be great for my career long term, so there is no need to be firing the laptop up as soon as I get in from work and turning in at 1am.
It all seems very obvious now, but in the moment it is easy to get carried away, hindsight is a wonderful thing after all.