In Part 1 I explained the what and why. Today I will talk about the how.
In 2013, I was feeling trapped in Switzerland. I wasn't enjoying my job anymore and there weren't many opportunities across the country. I decided to move to the UK. This move was motivated by one thing and one thing only: get my feet in London. I got a role as a Senior Engineer at Monitise. Besides making friends for life, professionally speaking, I didn't get much else. It's not surprising that I left after 8 months.
My average tenure in a company is 1y and 4 months. Looking at this number, one can assume that I like to jump around. People close to me, know that I passionately hate that. At an early stage of my career, remuneration was the most important attribute. It had a lot of weight when deciding if I should jump ship or not. It had so much weight, that it was the only factor I considered, when I left Monitise. It's not surprising that my second role in the UK is my greatest professional mistake. After that, money became a secondary concern. To the point that I joined Just Eat even with a pay cut*. After a certain threshold, getting 10k or even 20k more per year, didn't change my life for the better. With the gift of foresight, I can now see that my worst career moves were mainly motivated by better wages.
Babylon Health was the longest I have ever been in a company, standing at 3y. It got me thinking what were the reasons behind it and how could I improve that number. So I came up with the following questions:
- Do I use the product, or can I see myself as a user of that product?
- Do I believe that the product has a meaningful impact in people's lives, or provides real value? (e.g. social networks typically don't meet this criteria)
- Can the product expand to different verticals? (Babylon Health was/is pretty good at it)
- Do I like the sector/industry?
- Is the company hiring and at what rate?
- Is there a chance to move inside the company?
- At what stage is the company? Early vs Late stage.
- Do I know someone working there? Do they like working there?
- Is the company profitable?
- Remuneration / Perks
- Is the company paying above or bellow the average?
- Does the company offer stock-options?
- Does the company allow to work remotely?
- Is there a salary revision and when does it happen?
- The role
- What will I do at the company?
- Does the work I will do positively affect my career in the long term? (Learning opportunities)
- Do I know who will be my colleagues and manager?
- Is there career progression? (If there's no growth, it's unlikely. Ask yourself, is your promotion just a title change + more money? If so, that's not career progression)
This is not an exhaustive list, but they are a good indicator if a company might be a good fit or not. Babylon Health was the longest place where I stayed for a simple reason: it nailed most of these questions. The more reasons, I can pin to a company when considering joining, the longer I will likely stay there.
I would like to emphasise before starting: the interview process goes both ways.
Below, some considerations and questions I make during interviews. All answers should be backed up by a concrete example. If I am given a textbook answer, I will always ask for a real life example.
- Is the pay above market average? When this happens I tend to be pedantic during the interview to understand why is that the case. It's not a surprise why banks pay a lot more than other sectors. I tend to stay away from companies that don't provide a good explanation why they are paying a lot more than other companies for the same role.
- Do I have the opportunity to talk with my future manager, before joining the company? I wouldn't join a company before knowing the person that will manage me.
- Look at discrepancies in the staff. Do I see an odd number of Product Managers per Engineers? Do I see too many Managers per ICs (or the opposite)? Do I see an overlap of functions between a CPO, a VP of Product and a Product Director? These usually correlate to a dysfunctional organisation.
- Look at the average tenure in the company. In some cases it might be difficult, because freelancers/contractors can screw up the numbers (LinkedIn insights provide these values).
- Look at the company's profile on Glassdoor. For small companies I take it with a grain of salt. I read both negative and positive reviews. I also keep in mind that people with a bad experience are most likely to leave a review, versus someone who had a good one.
- Is the job spec clear? I won't engage with a company if they are hiring for a role where the job spec is not even available. Period. If they say it's a temporary situation, wait until that happens. A clear, well written spec is a good sign.
- Look at how the company does product. How are the product teams organised? Per function? Per squad? How are the squads formed? Are these proper product squads, with a problem space and an expected outcome, or are they given a solution to implement? Is the Engineer Manager part of that squad, or outside? If the latter, how do they keep tabs with what's happening inside?
- This might seem a minor one, but to whom do the designers report to? I am skeptical about designers reporting to Product. Design is a distinct function like Engineering is. Would you want to report to your product manager? I thought so too.
- Try to see where the company focus is. Are they laser focused, or split across many areas. In massive corporations (Amazon, FB, Apple, etc), this is not a concern, but for small companies it is. Startups have a limited amount of resources and people, it's a huge gamble to split across multiple verticals. Unless you are Blitzscaling. 🤠
- For smaller companies I ask to meet the CEO. The CEO has a considerable weight in my decision to join a company. In particular for startups or smaller companies, the culture, values and behaviour are set by them and amplified by others.
Questions I often ask as an interviewee:
- What you don't like about the company?
- What do you like the most about the company?
- How do you decide you should tackle a particular problem, or area?
- How do you deal with low performers?
- How do you go about promotions and career progression?
- What do you expect from my role?
- If I join tomorrow what I would I be doing in the first week? And in the first month?
- Are goals sets for the probation? [You should want them to be]
- How can I be successful in this company?
- How does the team feel about an outside manager, versus one promoted internally?
When looking for a new role, I knew what was important to me and what I wanted:
- Work as an Engineering Manager. [Hard Requirement]
- Work as close as possible to fully remote. [Hard Requirement]
- Leave the mobile space. [I explained the why in Part 1]
- Work in a product team, instead of a feature or delivery team.
- Work on a utilitarian, or serviceable, product.
These were the companies I engaged with for an Engineering Manager or Senior Engineering Manager: Twitter, Facebook, Amazon, Monzo, Spotify, Cazoo, Carwow, Noon Academy, Lightricks, Discovery Inc, Prolific, Dija, GoodNotes, Stripe, Deliveroo, Gousto, Hopin, Comply Advantage, Depop, Numbrs, Github, Cuvva, RevenueCat, Peloton, TouchNote, Tractable, Freetrade.
- Out of 27, 14 contacted me. I contacted the remaining 13.
- I applied but never received a reply: 2.
- I rejected before the initial conversation: 5.
- I rejected after the initial conversation: 7.
- I was rejected before the initial conversation: 4.
- I was rejected after the initial conversation: 2. [Stripe and Tractable]
- Companies with whom I moved forward beyond the initial conversation: 5.
- Companies I was rejected during the process: 1. [RevenueCat]
- Mutual rejection during the process: 1. [GoodNotes]
- Processes I cancelled, after receiving an offer: 2. [Deliveroo, Amazon]
- Processes I cancelled/didn't start because it was bad timing: 2. [Lightricks, Monzo]
- Number of offers: 1.
initial conversation, I am referring to the call one usually has with the internal recruiter or hiring manager. There's an intro to the role, the company, candidate's background and some final questions the candidate might have. This initial conversation, can also be multiple calls, before the actual interview process kicks in. For a few rare exceptions, I never start the official interview process before this intro call.
The most interesting point for me is the two companies that rejected me after the initial phone call. They rejected me for the same reason: lack of backend experience compared to other candidates.
Once the official interview process starts, if there's time mismatch between receiving an offer and other recruitment processes, I will cancel the latter. Some people prefer to accept the offer and continue other processes, hoping for a better package, so they can either take it or use it as leverage. I don't feel comfortable with said approach. If I accept an offer from a company, I will honour that commitment. This was what happened.
With those 5 companies, I had a mix interview process typical for a management role:
- Behavioural interview.
- Cultural interview.
- People management (or management style) interview.
- System Design interview.
- Algorithm / Coding interview.
System Design Interview by Alex Xu as the only study material. I was quite pleased that I passed the system design stage, thanks to that book. I also used
Empowered by Marty Cagan to review some bits and pieces. Both books were recommended by Gergely Orosz. Whether you are interviewing or not, or as an IC or manager, I would highly recommend reading them.
Out of all the interviews I had, this company had the best fit for what I wanted for my next role. In fact they checked all 5 items. Alongside Yammer, many years ago, they were the only company, that made me feel they were on my side and not against me. Most of the process was a conversation, where there was a genuine interest in knowing me and how I like to work. They were also one of the few that were pedantic about giving me enough time to ask questions. Typically companies give candidates just a few minutes at the end of the interview as a favour.
I am please to announce that I will join Prolific as an Engineering Manager in May.
*I did leave Just Eat after 6 months, not because it was a bad place to work (in fact quite the opposite). I had a great opportunity working with friends (from the 8 months gig), in a greenfield project, with Swift 2.0 + ReactiveSwift + AsyncDisplayKit. The opportunity at MailOnline was too good to turn down.