As I find myself looking for a new role, after some effort picking the right company, I wanted to revisited the basics. This TLDR answer the what, but it doesn’t provide much insight into the why. Let’s fix that.
1. IC or Management
I have enough experience and evidence that I can do a decent job at both. I plan to continue on the management track. Right now it’s where the biggest room for improvement is. This doesn’t imply that I don’t like coding, which I do. Or that I couldn’t be an IC. But to code again, would have to be for the right reasons: improve my knowledge horizontally. Continuing doing iOS is a vertical investment.
2. Fast paced, with medium to high intensity work
I struggle in slow paced environments, partly because I am impatient. I like to see movement and work progressing. I feel at home when working with highly driven individuals. Management is a role that requires patience, and it’s something I often have to remind myself of.
3. Ideally at a growth stage, that requires teams and processes to scale
Smaller companies, or at a growth stage, usually have more opportunities, compared to well established companies. It also allows me to do things outside my remit, because the role is more fluid. I am quite attracted to the ambiguity and the figure-things-out that smaller companies inherently have. Having a well defined role can work, but I prefer to ware many hats.
4. Flexible schedule, where what’s important is work delivered, rather than time spent in the office/online
Being in the office or online can act as a function of optics. I prefer to focus on the outcomes of my work. The same applies to producing a lot of otput (e.g. code, done tickets), rather than business impact.
5. Working with empowered product teams
6. Working with ambitious engineers that want to be better
Part of my job as an Engineering Manager is to grow, coach and guide engineers. I tend to gel better with individuals that regurarly ask for feedback and have a growth mindset. Ideally, these ideals should be encouraged within the company.
7. Individuals and teams that are accountable
Accountability is interpreted in many different ways. I like to think about it when coupled with autonomy and ownership. When individuals fully own their work, they have skin in the game. They understand deeply the why behind their work. When they commit to achieve something, they deliver it. When individuals and teams consistently deliver, they should be rewarded. When things don’t go well, problems should be analysed and improved. Psychological safety is paramount to achieve the best results.
8. Pragmatic approach to technology
I used to be quite pedantic about tech, architectures and frameworks. Great teams focus on the outcomes and can deliver results with whatever they are using. Technology is a means to an end and not the end itself. I would struggle working in an environment where more time is spent nitpicking tech, instead of delivering user value.
9. Ideally fully remote, but hybrid can work from London, UK
I am more productive working remotely, compared to an office environment. It’s definitely easier to build trust and gel with team members when working F2F. An Hybrid modal could be the ideal situation, with at most two days per week in the office.
10. Ideally in Healthcare, or Fitness/Wellness. ❤️
These sectors are my own personal preference.