hjf.io

Are you ever “just an engineer”?

16th Aug - 2024

I used to think that being an engineer was to sit alone, surrounded by code and not making an impact. I always thought that the journey went junior, senior, maybe principal, retire and perish. Looking back at the last half-decade, I’m happy to say that I’m totally wrong.

My journey in to software engineering is semi-conventional, but I had a bit of heartache going through it. You see, after university I joined an immature enterprise as a cloud engineer. This was an environment where there was no engineering function, and what existed was being built by essentially junior engineers and people who could talk more than they would do.

Given this and the fact that I was fairly talented when it came to writing code and building things, I eventually landed in a role where I had a good bit of exposure to the business and could direct our engineering efforts. I was essentially a tech lead with no real background.

Here’s the dilemma though: I had a big passion for building things and wanted to get better at it. I didn’t have a mentor, and I wasn’t getting. much exposure to building anything outside of a couple of basic backends and some frontend code.

What I did have was exposure. I wasn’t just an engineer, I was able to work across plenty of different people and was the go-to guy for everything. My responsibility was growing quickly, but my engineering skills weren’t. I was told that this was great growth and that I was doing really well, but I wasn’t being compensated for it.

Responsibility isn’t always a good thing. It’ll get sold to you as something to build your career, especially early on. The people dealing it out often use it as a way of stopping you from leading. The thing that doesn’t get brought up is that with more responsibility, you get more stress and eventually you’ll burn out.

It’s like the parable of the Mexican fisherman: he was content with his simple life. He caught enough fish to feed his family, had time for leisure, spend time at the beach and enjoyed time with his family. But then came the business consultant, promising a bigger boat, a fleet, even a cannery. The fisherman would be rich! He’d just have to work, a lot. He’d be able to retire, spend time at the beach and be able to enjoy time with his family. But at what cost?

I really took this on board the first time I’d read it. How much work could I balance? How could I maximise enjoyment over the course of my life? I also had the worry that I’d be just an engineer. I’d be another NPC sat down with my code open, just another head in the daily standup, and just another contributor to a codebase.

This is really tricky to get over as an early career professional, as you tend to just want status, power and money early on. A few years down the line, you tend to lean towards a fulfilling career and care less about what others think about you.

Naturally, this put me in a bit of a sticky situation: I had a nice title, lots of different responsibilities and I was writing a bit of code. I knew that moving somewhere else meant a totally different role, and also a step down. I was a bit of a jack-of-all-trades. I could write good code, and quickly, but I knew that there was more to software engineering than that.

I actually left my “tech lead” role. I started to realise that at that enterprise, you just had to talk your way up and pretend you know what you’re on about. Architecture and the C-Suite were this way. They were also rife with nepotism, which I still don’t care for.

Whilst I appreciate most organisations work this way to an extent but in this place, even if I’d made my way to the top, I knew that moving to a different role via choice or redundancy would be extremely challenging due to the skillset that you just don’t learn.

And looking back, I never really thought of the negatives that came with that role. I was definitely undervalued. Although I worked with the business, they never really understood what went on behind the scenes. Because there was no one to lean on, they didn’t either. The salary reflected this too. Although it was enough to live on, it didn’t represent the effort that I’d put in.

Being a software engineer isn’t just writing code. It’s designing and building resilient services, monitoring them and thinking about more than the stuff that you write. My mindset remains the same here though: you get paid to think, and your output is just a byproduct of that.

I ended up joining an enterprise with a very strong software function as a mid-level software engineer. My mentor is the person that grew me to a really strong senior software engineer, and I owe a lot to her.

It’s incredibly important to have a mentor, or someone that you look up to. I’ve found one of those, and she’s exceptional. She taught me everything that I know about architecture and with her help, I transformed from a coder with potential into a designer of robust, scalable systems. I’ve since been able to design and deploy* *solutions that generate millions for the business.

Beyond her technical ability, she’s an exceptional coach who has equipped me with the interpersonal skills to navigate challenging situations with grace and confidence. My mentor possesses a rare combination of meticulous attention to detail and genuine empathy. Her ability to see both the big picture and the intricacies of a problem is rare and I think it’s fundamental at any level to have a mentor; it’s a total cheat code when you land the right one.

Leaving early set me up for success. I had incredible soft skills, but given I could still be considered an “early career professional”, I’ve since really built my skillset out in all of the facets of software engineering: Development, DevOps and Site Reliability Engineering.

Am I “just an engineer”? Absolutely not. I’m still a big fish, but the pond has changed. I’ve got this passion for engineering and I’ve actually been able to use it more. This has put the spotlight on me in different ways. My impact is still big, across the team and various teams. I can influence, even better than I could before because my talk is real talk. I’m happier - but with a less impressive job title.

So, reader - what’s the takeaway? While taking on more responsibility and talking the talk can be appealing, building a solid foundation as an engineer is essential for long-term career satisfaction and sustainability. You’re not going to be “just another engineer”, your environment will just change. You don’t have to speedrun anything, but you should prioritise a fulfilling career, full of problem solving and self-growth. Strong engineers are the backbone of successful teams, and their expertise is invaluable. If you’re in a similar situation, you’ll thrive in this industry. Prioritize your professional growth, and the opportunities for leadership and impact will naturally follow.