From Individual Contributor to Engineering Director
Reflecting on My Career Journey Over the Past Decade.
Today's essay is different from my previous ones and a bit special. I won't be writing about how to do something or sharing my opinion on a particular topic. Instead, I'll share my personal journey and how I achieved the Director position at Namecheap, the world's second-largest domain registrar, where I've worked for nearly a decade now.
This isn't one of those success stories where, through hard work and following best practices, you land your dream job. It's simply my honest journey of moving from an individual contributor role to a director role. It's based on what I've learned from my own experience, and although each company may be different, the fundamental principles remain the same.
I believe ordinary stories are more common, and I hope my experience might be useful for others on the same path. So, I'll also share my takeaways from each phase and offer some suggestions based on what I've learned.
Packing 10 years into 1500-2000 words won't be easy, but I'll give it my best shot.
So, let's begin!
Elevate Conference (Sponsor)
Before we get started, I want to say thanks to PlatoHQ and the Elevate Conference for supporting this newsletter issue and making it free for everyone!
The Elevate Conference is a special NO-BS event (you should go only for that!) for engineering leaders who are looking for solutions to their biggest problems.
🗓️ When? November 7th and 8th, 2023
📍 Where? Storek, San Francisco
As a newsletter subscriber, you get a special 40% discount on the conference ticket!
🚀 How I Joined Namecheap
Before landing at Namecheap, I owned an IT company in Italy and then a startup called wpXtreme, aiming to become the first integrated WordPress marketplace. Despite we were able to raise some funds, unfortunately the project failed for various reasons, but it left me with a good network of contacts.
One of these contacts, at one point, reached out asking if I knew someone who could help their company with building a WordPress Managed Hosting. Given my experience with the cloud, and my involvement with WordPress, I proposed myself instead of suggesting someone else. I made this move without thinking too much, and after a couple of interviews and a test project, I was hired at Namecheap.
My mission was to create the first prototype of what is now EasyWP, Namecheap's WordPress Managed Hosting that today counts thousands and thousands of customers. The idea was to build it on our own commodity hardware, not relying on public cloud providers, to make it affordable for everyone.
Though my official title was Product Owner, I dedicated a few months to building the first early iteration of this product and the on-premise Cloud Infrastructure to host it, working under the direction of my new team leader and with the assistance of an experienced developer (and friend) who was hired alongside me.
Challenges
Transitioning from being an entrepreneur to a full-time individual contributor role wasn't easy; for some time, it felt like a step back.
Starting to work for a company as large as Namecheap, with its thousands of employees, was a different experience compared to a startup.
Lessons Learned
Maintaining a good network is one of the most valuable assets one can build during their life.
Life can be unpredictable. Sometimes, what seems like a step back (like transitioning from an entrepreneur to an individual contributor) is what you need to create an impressive career path.
A bit of luck and being in the right place at the right time counts.
👨💼 From Individual Contributor to Engineering Manager
Once the first prototype was built, we did many further iterations and at one point the product was launched publicly, we started getting customers and scaling really fast. This is where we also started hiring new people, the Cloud Team was born and I was promoted to the Engineering Manager position.
Despite my solid entrepreneurial experience, this for me looked as a completely new world and implied a big change in my duties.
While before I was the whole day (and nights) in front of my terminal with the code editor open, now I had to:
Hire new people
Together with my team leader, take care of their salaries and raises
Do 1:1s with every team member
Facilitate technical decisions, instead of taking them directly
Resolve conflicts
Manage leaves and ensure we had backups
Understand the progress and report it to my manager
Present initiatives to the wider company
I've to say I was lucky enough to have the support of a good and experienced team leader that involved me in a lot of decisions, but despite this I had to figure out many things by myself with a trial and error approach.
While it was a period of very hard work and sometimes I felt under pressure, I have to say it was fun and rewarding. It was like having a fast growing startup, backed by a pretty solid company like Namecheap.
Challenges
Transitioning from a hands-on role, where you physically build things, to a managerial position where you have to oversee people who build things, is a significant change.
Especially at the beginning, it was challenging to structure my day, and I often felt lost. I experienced impostor syndrome, and it was only later that I realized this was quite common.
While I have a natural inclination for bringing people together to create things, hiring the right individuals, managing them, and resolving conflicts were incredibly different tasks from coding or monitoring systems.
Lessons Learned
Being a natural generalist, I quickly realized that I needed to hire individuals with stronger technical skills if we wanted to make a difference and achieve success. I believe that for every engineer stepping into the Engineering Manager role, this is a crucial step. The first thought that often crosses your mind is, "If I hire someone better than me, they might surpass me." That's a misconception. While it could happen, you must embrace the risk and think about your team’s success.
Transitioning into the Engineering Manager role involves a mindset shift. Your focus is no longer on writing code or managing systems. Your top priority becomes identifying exceptional individuals and empowering them to drive the entire team's success. It's not about you anymore; it's all about the team, and their success becomes your success.
Feeling like an impostor on certain days is entirely natural. Your work becomes more challenging to measure because it's less tangible. That's why it's crucial to concentrate on the impact. Evaluating the impact of the team you manage helps avoiding to feel an impostor.
🌟 From Engineering Manager to Director
In the following years, EasyWP became a successful product. The on-premise cloud infrastructure we built evolved into a platform and began to serve other products and teams within Namecheap.
As a result, our team had to scale even more, get deeper into company operations, and transform into what we now call the Cloud Department.
It was during this transition that I was promoted to the Director role. Our structure quickly shifted from a single team of 10-12 people to four teams, making a total of about 40 people in our department today.
While I continued many of the Engineering Manager tasks from previous years, new ones piled up, such as:
Coordinating with other stakeholders in the company
Building and sharing my vision
Handling the yearly budget
Leading managers instead of just individual contributors
While this might appear to be an extension of the Engineering Manager role, in reality, it is even more abstract and requires one to be proactive and somewhat creative.
Challenges
Moving from what everyone felt like a smaller, protected environment (almost a startup within a company, as I mentioned) to a full-fledged department is a big leap. Being more involved in the larger company's plans, having more influence, means there are trade-offs. Some processes need to change, and there might be a feeling of having less freedom. Guiding your team through this shift is challenging.
Managing a team is one thing, but managing managers brings a whole new set of challenges.
As you climb to these positions, your work can feel less direct or tangible. While you might talk mostly with other Engineering Managers, it's important to keep communication open with the entire team.
While individual contributors and engineering managers have access to plenty of reading material for inspiration, as you move up to higher positions, it becomes tougher to find such helpful resources.
Lessons Learned
The top skill to master and promote within your team is communication. As I mentioned earlier, as you advance in your role, your work might seem less hands-on. Therefore, effective communication is essential, not only within your team but also with the broader company. It's safe to say that the level of communication required is directly linked to your progress in your role.
Adapting to change is essential. With growth come new challenges and learning how to navigate them is key.
Trusting your team and the managers you oversee is fundamental. Sharing responsibilities and believing in their capabilities leads to better team dynamics and trust.
Continuous learning and feedback are invaluable. As a leader, staying updated and open to feedback can help in making informed decisions and ensuring the team stays aligned with the company's goals.
Especially when you are in higher roles, having mentors or coaches to assist you on your journey is beneficial. Exchanging points of view and experiences with other leaders also proves to be very helpful.
📝 TL;DR
If I were to condense these ten years and the three phases I've experienced into a concise summary:
Individual Contributor: in this phase, your work is more hands-on and easy to measure. You'll mostly deal with technical challenges.
Engineering Manager: this is where the biggest change in your daily job occurs. It might feel like you're doing less, but in this phase, it's more about measuring the impact you make rather than counting tasks.
Director: you're in charge of other managers, which can be both challenging and rewarding. At this stage, it's essential to have a clear vision and make sure you communicate it clearly and consistently to your team.
🏁 Conclusion
While writing this essay, I realized I could probably write a book about the last 10 years. It has been (and continues to be) an intriguing journey during which I've learned numerous valuable lessons.
I understand that my overview was quite high-level, but the key concepts I aimed to convey are:
People often perceive individuals in higher positions as experts with incredible knowledge and an impressive track record. If I managed to achieve it, believe me, you can too. Like anything else, it merely demands discipline and consistency.
If you're making the transition from an engineering role to a managerial one, first, ensure you are certain about your decision, and then focus on shifting your mindset. Nothing is more challenging than having a manager who still tries to do the individual contributor's job.
At every stage of your career, you will encounter different challenges, and it's perfectly normal to feel lost at times. Don't give up; seek help from your manager, leader, coach, or simply gain another perspective.
That’s all folks
That's all for today! As always, I would love to hear from my readers (and if you've made it this far, you're definitely one of the bravest). Please don't hesitate to connect with me on LinkedIn and send a message. I always respond to everyone!
Really well written and broken down. I'm interested in reading more of your posts. Thanks for sharing!
"People often perceive individuals in higher positions as experts with incredible knowledge and an impressive track record."
So true! I used to think the same and then I find some junior engineers feeling the same.
Awesome article with so many tidbits for growing leaders.
What is your next goal and what challenges do you want to overcome?