It’s been a while since I wrote a blog post…hello to anyone who’s previously read my posts, and a welcome to anyone new to my blog 😄👋🏽! In May 2023, I progressed to the role of Mid Level Software Engineer. I wanted to take some time to document what that process looked like, to maybe help others who are looking to progress sometime soon.
My motivation behind this post is simply the fact that I haven’t seen much content online about this period of a developers journey. I feel like there’s tons of posts about “getting that first developer role”, but what about all the other points of your career past that? Landing your first role is only the beginning, despite how tough that process can be!
This will be the first post on this topic, where I simply outline the change I made in becoming a Mid Engineer, which includes leaving my previous role for my current role. I’d like to do a separate post on the exact things I felt that I did in the past two years to help me get to this point. (I reckon this post would be massive if I did both here! ). Let’s get into it!
Progression can happen in two ways, one being an internal promotion where you stay in the same company, and the other being a move to a different company. I unexpectedly did both at the same time, so this post will highlight what that process looked like for me, with some personal reflections of this journey towards the end of the post. Stick with me if that sounds interesting to you! 🤓
I’ll talk about the promotion process I went through at my old company, Moonpig. There was a promotion window coming up, in April 2023, where I had to submit the documents to put myself forward for the promotion. Despite feeling unprepared, I started to put together the necessary documentation with my manager, of which there were two parts to. I’ve outlined these below 📝
One document was a spreadsheet, called a Gap Analysis, with the competencies that Moonpig believed that a Mid Level Engineer should have. The goal here was to meet some of this criteria, demonstrating I was going above and beyond my role as an Associate. Examples of things that were looked at was writing tested and clean code, being able to effectively collaborate with peers, be able to take lead on initiatives and pieces of work, and show a general involvement in the community both within Engineering at Moonpig, and in the wider tech community. I demonstrated whether or not I met each criteria with a rating of 1 to 5, where 1 indicated no experience or confidence in the competency, and 5 indicating a strong level of confidence, backed by sufficient evidence.
Evidence was then listed in bullet points next to each competency - examples of this was feedback gathered by peers, code reviews, pull requests, and features delivered on the Moonpig platform. Any weaker areas, rated 1 to 3, were not necessarily a bad thing, and demonstrated my awareness of what to work on moving into my promoted role. Having a growth mindset was massively important at Moonpig.
The other document was a general document with the simple aim of explaining exactly why I should be put forward for the role. This document was split into two parts; the first was to write about 4 to 5 solid examples of work I did at Moonpig, in the STAR format (Situation, Task, Action, Result). This was the area to highlight my capabilities, and the impact I had on the business and my peers. The second part was comprised of feedback gathered by colleagues across the function, ranging from all abilities and roles. I gathered feedback from Engineers, Product Managers, Designers and Principals. They were asked two questions: “Reasons To Promote” and “Reasons Not To Promote”. This ensured my promotion case had a balanced and varied set of judgements, ensuring that the final decision to promote, or not to promote, was based on a fair case. The gap analysis was an accompanying document to this main document that I filled out.
Once my documentation was put together, Senior Tech Leadership assessed each internal case that was put forward, where the decisions were made around whether someone should be promoted or not. I found out that I passed the promotion process and was due to be promoted to Mid Level Software Engineer 🥳. However, coincidentally around the time of preparing myself for this promotion, I ended up interviewing externally for a Mid Level position elsewhere, and ended up landing this role (which is where I currently work at the time of writing this). I’ll briefly go into what this process was like for me in the next section, given that at the time of applying, I had no “Mid” experience to my name.
Around March of 2023, I received a message regarding a Mid Level role at BEAUTY BAY. The name instantly rung a bell as I had purchased products from their site before, and their tech specification matched me pretty well. I wasn’t on the hunt for a new role, and was very happy at Moonpig, but decided to reply with my CV to see if I was a good fit for the role. My motivation for doing this, as opposed to just saying no, was to “test the waters” (i.e. the tech market) with my skills, to see if I fit any other role out there. I also wanted to just practice interviewing - it isn’t something I’ve done much of at all in my career, so decided that now would be a perfect opportunity to put myself in a real interview scenario with little to lose, since I was content in my role at the time at Moonpig. I ended up being invited to the first interview, and to cut a long story short, was presented with a job offer after three stages with the company, where one was a technical pair programming exercise.
This process over the last few months was wild to me. I got promoted internally at Moonpig, whilst simultaneously landing a role elsewhere at the same level, and accepting this role. Note that I was extremely happy at Moonpig, and would’ve stayed there, but the opportunity presented in front of me in a new company was a chance for me to push myself further out of my comfort zone, something I’m keen to keep doing, particularly while I’m young and earlier on in my career.
I didn’t feel ready to put myself forward for the internal promotion, and I certainly did not expect to land a role at Mid Level elsewhere. Getting that offer was a huge shock to me, and I proceeded to spend 3 days deciding if I should accept the role, mostly worrying that I wasn’t really cut out for the job they offered, and that they had somehow “got the hiring wrong” by deciding to offer me the role. I am happy to say that things have gone better than I expected of myself nearly three months in, and I’m slowly “figuring things out” in my new workplace 😅🧠.
Getting a promotion in two ways simultaneously was a massive confidence boost to me, really proving to myself that the work I had put in the last two years prior to the moment of getting a job offer elsewhere was definitely paying off. It has been a great way to attempt to combat the Impostor Syndrome that I still suffer with today, but I know that as I keep progressing, I’ll continue to build up a bank of evidence against the thoughts telling me that I’m not quite “good enough”.
If you made it to the end of what feels like a really long post as I type this…thank you! I hope that sharing my journey as I made strides in the tech industry could help and inspire others. I hope to do a follow up post on the things I’ve done in the last two years which I feel like helped me get to this point - follow me on LinkedIn to be notified of when I post stuff to my blog (and sometimes I post other random thoughts on there too!).