An image of a man in a cape on a motorcycle

I was traveling home from a weekend at the seaside when I received a message from a good friend. He told me that he started a new job, that he was excited to work there, and that I would be a good fit too. I told him it sounded great, but I was happy at my current job. After all, I established myself as a team lead and senior developer there.   

The company I worked for at the time hired only junior devs, and one of my responsibilities was to guide them and teach them our technology stack. I was very happy doing that, but after a while, I realized that I was not learning anything new.   

In engineering, it’s important to be aware that things are constantly changing and evolving. If you don’t keep up with change, time can just “run you over.” My uncle, for example, used to be a good car electrician but lost a job to mechatronic guys when new cars with a bunch of electronics came to market. Put simply, he stopped learning new skills and couldn’t adapt to new market requirements.  

Not to end up like my uncle, I started attending many dev meetups and conferences and made a rule for myself to watch half an hour of a Udemy course with my coffee each day.   

From Hero to (sort of) Zero  

I knew that the company where my friend suggested was a high-tech company that used lots of cool and cutting-edge technologies. So the next day, during my morning Udemy routine, I started thinking… maybe I should apply for the job just to see where I stand in the modern tech world. So I did that, got the job, and started working for a new company.  

When you work somewhere, you play a certain role. It might even be somebody you’re not in your private life. It’s like you are an actor, and the job is your acting gig. I like to think that in my previous job, I was playing this indestructible action hero at the very center of the story, solving all the world’s problems.   

In this new company, I found myself in a whole new role, playing a clumsy sidekick. That can be a shock and feel like a downgrade, but here’s the thing – if you want to learn new things, you should watch out for your ego and not let it get the better of you. There’s always someone who knows stuff better than you, and there’s always a bigger fish – if not, you need to find a bigger pond.   

Heroes get impostor syndrome, too 

When you are in the software development business, you quickly realize that it’s a massive industry with an endless pool of knowledge and different skills to master. You can’t be very good at everything, but you can pick your favorite tools and topics you are interested in and turn them into a strong foundation for learning.  

When you master a new skill, after the initial high, you realize there are features you never even thought about, and it feels like you’re back at square one. Then you discover other exciting skills you want to explore, and the cycle goes on. I think most developers are people who really enjoy tinkering with stuff in general and find it to be a great source of fun, so they don’t mind the ups and downs that much.  

However, it can also be a little daunting since you keep stepping outside your comfort zone, especially when you change jobs and find yourself a newcomer in an unfamiliar surroundings.   

This happened to me when I switched jobs – I developed a case of imposter syndrome. You know, when you tell yourself that you don’t know anything, are not good at anything, and have somehow fooled everyone around you into thinking that you are good at something. Sometimes it’s hard to balance being too cocky and not feeling like a fraud. Then again, sometimes it’s ok to feel both at the same time.  

Good company makes for good motivation  

My best friends are very good devs, masters of their craft, and are a continuous source of inspiration. Some of them have their own companies, some work in other companies, and they are very respected within the dev community.   

What they all have in common is that they treat their craft with huge respect, how modest they are, and how they continuously work on improving themselves. To me, they are like some kung-fu masters, always exercising, always trying to get better at what they do. So I try to be like them and treat my craft as kung-fu.   

I’m currently having a great time in my life and career, getting a whole new perspective on the things I thought I knew well and learning new stuff that I didn’t know anything about.  

And it’s really fun, feeling like a kid again and a hardened veteran at the same time. “Fun” is the word most devs will use when you ask them why they got into this business in the first place, so it’s really important to have that feeling of delight.  

Embrace the side-kick, enjoy the show 

At first, I wanted to end this post by saying that in software development, learning is about the journey and not about the destination. But really, it is about the destination too. It feels very rewarding when you start solving your daily problems using the new skills you learned. With years I realized that the more I learn, the less I know – but it’s actually very exciting.   

It’s what makes this job awesome because if you don’t let it, it never gets dull. I think most devs feel that way. I think it’s one of the reasons why we like to share our knowledge so much. When developers have that “A-HA” moment, they can’t wait to share it with a fellow developer and explain how they came up with that.   

Given enough time, anyone can get back to playing an indestructible action hero – but playing the clumsy sidekick every once in a while has its appeal too.