Five years ago, my boss at my first web development role told me that I wasn’t cut out to be a developer.
I still like the guy – he gave me my first opportunity and I very much appreciate that. I’d quite happily meet again and have a few beers with him. But he was wrong.
A couple of weeks ago, I was promoted to senior software engineer at M&S.
Woohoo!
How?
It feels kinda crazy that even three years ago I was admittedly pretty clueless, just faffing around with code hoping things worked – increasingly they did work, but it still often felt like luck, mixed with a bit of perseverance.
So, how on earth have I suddenly ended up a senior engineer? This would be a list rather than a load of paragraphs if my website design from 5 years ago wasn’t so embarrassing.
One. Getting the role at M&S. Without doubt, this was the perfect step up at the perfect time – and I had some great people to help me.
Two. Learning how JavaScript works under the hood. It’s one thing knowing how to manipulate an array, and how to create functions – quite another to understand how and why it works. Understanding concepts such as the event loop, scope, prototype inheritence, etc have all massively helped. This list of articles was such a useful help. Yes I’ve read around 70% of them!
Three. Learning how to do a good code review. I think one of the main reasons I have become respected with my peers is from my code reviews – leaving examples of how to improve code, reasoning as to why different approaches are better, finding bugs. Some people seem to be really poor at this – a lack of effort, a lack of desire – or maybe just an unwillingness to question other’s code?
Four. Working from home. Seriously. I can put so much more energy and effort in now that I can do a whole 9-5, without being late from tube delays and stressed from tube delays, I can spend time before/after work doing a little studying, I actually have more time to do work and learn more. Not to mention the improved health – I am far better at my job without the crud of the commute and office life. I should probably go in one day though!
Five. Having a supportive manager that believes in me. Never underestimate the role of a great manager – and I have one. He believed in me before I did. I was quite taken aback when he first rated me as a “future star” on some HR nonsense. Maybe there is no “future” required now. But I don’t want my ego to grow too much!
Why?
Apparently I consistently deliver to a high standard. I agree. And receive great feedback from my peers in engineering, product and delivery.
Apparently I also bring infectious, positive enthusiasm (I’d like to think I temper this with some realism), and inclusivity to the team – the latter I’m quite proud of as I’ve always tried to make sure the social stragglers feel involved.
Oh and I’m good at talking straight. Yeah I know that.
Someone with 20 year’s experience even told me that he was shocked to find out that I only had 5 year’s experience when he found out the news.
It does feel a bit crazy to think back about just how much I’ve progressed, but there is a long way to go. Need to get myself onto the new tech stack team somehow, so I can be using and working with TypeScript and React on a daily basis.
And who knows where I’ll end up? Principal engineer? Engineering manager? I might have the potential. Scary.