Go back

The Single Most Important Thing I Did To Grow As A Software Engineer

Over the past 10 years working in tech as a software engineer, this is the single most important thing I’ve done to grow my career and learn valuable skills. It’s what I call:

Just-In-Time Learning

If you’re at all familiar with a language like Java, you’ll know what JIT or Just In Time means. But before I can get to what Just-In-Time Learning means, there is a pre-requisite for applying it.

You have to actively seek out opportunities to work on things that are out of your comfort zone. Here’s one such instance:

I started out as a UI designer/developer. I worked mostly in HTML, CSS, and Photoshop/Illustrator. I knew a little JavaScript but never coded anything serious. I worked at a tiny startup and when I got the opportunity to work on their Backbone application (yep, I’m old), I jumped at it. I didn’t know Backbone. The feature assigned to me was an interactive chart built with D3. I didn’t know D3 either. But I had faith that I could rapidly learn what was required to do the job.

Since then, I’ve done this several times over to learn technologies like React, Node.js, AWS, Terraform, and more. It did wonders for my career.

Just-In-Time Learning means just that. Learn the thing after you’ve said yes to doing the thing. Even if you’re way out of your comfort zone, dive in. Trust in your ability to learn what is required, at that moment.

You can’t be prepared for everything life throws at you. You can’t be stuck in an endless loop of learning.

Be curious. Be ready to get your hands dirty. Be ready to look like an idiot. Fuck around and find out what works and what doesn’t. You’ll learn a lot more than if you had prepared ahead of time. And it’s fun.