Debugging Your Own Growth
1 April, 2021
In 2018 I was working towards a promotion to Principal Engineer at Booking.com. I was involved in a lot of activities, but I felt I was neither making a meaningful impact on company objectives while simultaneously being extremely overwhelmed. I was part of a very successful team, but it was hard for me to point out my contribution clearly. I also felt like I wasn’t making progress towards my personal goals.
I never got that promotion. Very rightly so. I did have a vague feeling in my stomach that I wasn’t ready, but it still hit me very hard. What it did do, though, was to trigger a re-evaluation of how I had pursued my career until then.
I realized I had fallen into the senior developer’s dilemma. My efforts until then had landed me in a position where I was being pulled into a lot of different workstreams. Even though I was in a high-performing team, I did not have enough focus to spend time with my team that was learning by solving complex problems, and I was getting left behind in learning.
Moving to a different place in the business
One of the key expectations as an individual contributor is one’s ability to formulate a technical strategy with the engineering management. Like with anything new, you need to be able to get feedback to be better. In the team I was in, there was already a very strong technical leader, so there was very little space for me to develop my own skills as a technical leader. I realized that I needed to move to a different area of the business. I had an excellent relationship with my team, so it was a hard choice to make.
I sucked at setting a technical strategy at first. I went too hard on too many topics overwhelming myself. On occasions, I tried to brute force my approach to problems instead of empathizing with others and using my influence to get traction. But ultimately, I learned these skills, and it would not have been possible to develop these without learning them first hand.
There is also a blogpost (https://charity.wtf/2020/09/14/useful-things-to-know-about-engineering-levels/) from Charity Majors that talks about this in more detail.
Developing a framework of how and where I spend my time
I also realized that while I was spending a lot of time on a variety of things and feeling overwhelmed, my effort was not proportional to the impact I was having. So I developed a framework for better focus on important rather than urgent tasks with the help of a mentor.
I grouped my objectives into a set of three:
- One set of objectives that are important to the organization;
- Another set of objectives that are important to your manager;
- The final set of objectives that are important to you.
That helped me stay aligned with my organization and my manager while also working on my personal goals. I think this is also a useful framework to manage expectations, mostly with yourself, as to how you can expect to be rewarded. For the first two, you can reasonably expect to be rewarded for by the organization, the third one, you are doing for yourself. Any reward is a nice bonus. The ideal state is when there is significant overlap in the three things, but the reality is seldom that clean. I have written about this more in my blog post. [(https://www.siddharthsarda.com/p/something-important-for-someone-important)]
Working at the edge
As a Senior IC, it’s quite easy to fall into the trap of being an ivory tower architect who is involved in a variety of things superficially. I realized that this was the situation I was in and which held me back in my personal growth. I had a choice: I could continue to superficially lead various projects and let my technical skills erode or focus on a limited set of projects that ensured that I kept improving technically.
I made the explicit decision to make sure that I spend a significant chunk of my time working hands-on on a project that was out of my comfort zone. This was personally extremely satisfying. It also got me out of the zone where I was constantly thinking of my promotion and instead made me focus more on my long-term growth.
- You need to develop the skills to debug and monitor your own growth. If you seem to have stalled, you need to be able to understand what you need to fix and what you need to change. Life happens, and sometimes we get stuck in ruts for a period of time only for the jolt of failure to wake up. It’s very easy to externalize failure, and while there might be external reasons, you have to take responsibility and see what you can do.
- We have to view our career as a marathon. While this advice may seem cliche, we often get caught up in the immediacy of promotions and performance reviews. Will Larson’s essay about how to build a 40 year career (https://lethain.com/forty-year-career/) is a very good guide as to how you can structure your own career.
- The individual contributor path, for the most part, doesn’t have a map. Your manager can get you 80% of the way, thereby giving you the right opportunities, expanding your scope, and involving you in the right direction. Ultimately, you will need to map the final stretch yourself or preferably with the help of a mentor.
Scale your coaching effort for your engineering and product teams
Develop yourself to become a stronger engineering / product leader
Leo Torres, Engineering Manager at Carta, details how his one-on-ones experience, following his arrival to the US, was a watershed moment for his understanding of career growth.
Engineering Manager at Carta
Thomas Lamirault, Engineering Manager at BlaBlaCar, speaks of his efforts to adapt to the challenging situation of being left on his own after his manager left the company.
Engineering Manager at Ubisoft
Shraddha Ladda, Tech Lead, speaks of forging her career path that she considers - not so much as a liner ladder to climb - but as a jungle gym.
Senior Engineer / Tech Lead at Netflix
Irina Stanescu, ex-Tech Lead at Google and Uber, tells how she uses “snippets” to track her performance and gain visibility on her work.
Tech Lead at Ex-Google Ex-Uber
Irina Stanescu, ex-Tech Lead at Google and Uber, shares how she established herself as a leader without clinging to a title or long waiting for promotion.
Tech Lead at Ex-Google Ex-Uber
You're a great engineer.
Become a great engineering leader.
Plato (platohq.com) is the world's biggest mentorship platform for engineering managers & product managers. We've curated a community of mentors who are the tech industry's best engineering & product leaders from companies like Facebook, Lyft, Slack, Airbnb, Gusto, and more.