Navigating New Horizons: My First 3 Months as Head of Engineering at a SaaS Startup

Adapting to a different scale of business and assessing the challenges that need to be faced

Introduction

Embarking on a new journey is always a blend of exhilaration and apprehension. My transition from being a Software Engineering Manager at a large, multi-national organisation to the Head of Engineering at a SaaS startup has been just that. In this blog, I delve into my experiences, the challenges I’ve encountered, and the invaluable lessons I’ve gathered in these initial three months.

1. Transitioning to a Startup Environment

The move was thrilling, filled with anticipation for the unique opportunities and challenges that come with a startup. The shift wasn't just in the business scale; it was a complete overhaul in team dynamics and responsibilities. My previous role was focused on team management, but now it includes managing managers – a fresh and eagerly awaited challenge. What truly invigorated me was adapting to a different technology stack. Moving away from a mature, event-driven microservice architecture to a startup that was just coming to terms with tech debt and scaling dilemmas was an great opportunity to take the business forward.

2. Leadership: People First, Strategy a Close Second

My core leadership philosophy has always been about putting people first – a belief that hasn’t changed. However, this role has added a new layer to my leadership style. It's not just about supporting teams now; it's about making high-level strategic decisions on technology and planning the future structure of our teams. This dual focus on people and strategy has been an enriching expansion of my role, blending empathy with foresight.

Setting a technical strategy needs to be done in the right way. It's a blend of working with what the individuals in the company can buy into and get excited about, but also what the product, business and customers need for the product to succeed. Although I have helped work on strategic thinking within a team context in a much wider organisation, being the driving force behind an entire strategy was initially overwhelming yet exciting. Although I'm still yet to make the strategy come to life over the next 12-24 months, I am ready to roll up my sleeves and help us achieve what we set out to do.

3. Overcoming Initial Challenges

Rapidly understanding both the business and its technical underpinnings was paramount. The smooth transition was aided by a constructive handover with my predecessor, which was critical in navigating the complexities of technical debt, architectural evolution, and performance enhancements. Don't get me wrong I am still battling the lack of domain knowledge on a daily basis, however, I continue to seek to expand my own understanding by asking questions and working with the right people.

Equally vital was establishing clear growth paths for the team, ensuring that each member had a trajectory for professional development, which I identified as crucial for driving team morale and productivity. I am still working on a growth framework for my engineers to work against, but I can certainly lean on my own experience here to help shape this moving forwards.

4. Key Learnings: Embracing the Complexity

I quickly learned that the product I was overseeing is a labyrinthine beast, with intricate systems and nuanced challenges. Having domain experts who are open to consult with has been a lifesaver, offering clarity and guidance along the way.

By rolling up my sleeves and deep-diving into the technicalities, I've also gained a deeper understanding of the challenges faced by my team, which has significantly enhanced my decision-making process. Another key learning has been navigating the diverse opinions within the team, understanding that each perspective is valuable and contributes to a richer, more well-rounded approach to our projects.

5. The Fast Pace and Decision-Making in a Startup

The transition to the relentless pace of startup life was more jarring than anticipated.

It contrasted starkly with the more laid-back atmosphere of my previous role. Here, decision-making feels like painting on a blank canvas – liberating yet challenging as it's sometimes difficult to know where to start. However, it's a refreshing opportunity to shape the engineering culture and establish new standards; a chance to imprint my vision and values onto the fabric of our team.

6. Technical Shifts: AWS to Azure and Beyond

The transition from AWS to Azure was a significant technical pivot, but the foundational principles of cloud computing eased this transition. Sure, I have to pick up on some of the different service offerings, cost models and limitations of performance, but it hasn't been as bad as I expected. Plus, I had used Azure a few years prior when I worked in a digital product studio.

The other change I had to come to terms with was the switch from Terraform to Bicep for infrastructure as code. It was surprisingly smooth and insightful - it was almost like Microsoft took inspiration from somewhere...

Lastly, re-engaging with front-end technologies like Typescript and Angular has been an enjoyable journey back to my earlier experiences, reigniting my interest in areas like accessibility and performance optimisation.

7. Striking a Balance: Developer and CTO Roles

My role is an intriguing blend of being an additional developer and taking on responsibilities akin to a CTO/VP of Engineering. This involves participating actively in the technical expansion, engaging in hiring processes, and setting technical standards. The primary challenge is finding equilibrium between fulfilling the immediate needs of the developers and addressing the broader strategic requirements of the business within the constraints of a startup budget.

Time will truly tell where my role expands within the business, but for now I am enjoying the challenges that appear in front of me that are a blend of development, leadership and management.

8. Advice for Transitioning to a Startup Leadership Role

For those considering a similar move, be mindful of the unique challenges in a startup, especially regarding budget constraints.

Also, embrace the necessity to wear multiple hats – from coding to strategic planning.

While it may seem daunting, the experience is incredibly rewarding, offering a chance to contribute meaningfully across various aspects of the business.

9. Empowering the Team: Enhanced Observability

A significant initiative I spearheaded was enhancing the platform's observability. Prior to my joining, the team had a limited understanding of system health. By developing centralised dashboards for monitoring, we have shifted from a reactive to a proactive engineering approach. This transition has been crucial in our journey towards becoming a more dynamic and responsive team.

Conclusion

These three months have been a whirlwind of learning, adaptation, and growth. The startup environment has pushed me to broaden my horizons, expanding my technical and leadership skills. The journey is ongoing, and the anticipation for what lies ahead is palpable as we continue to evolve as a business, product and engineering division.