The speaker outlines three essential rites of passage every developer faces: striving to move beyond junior status through risk-taking and failure, managing the consequences of breaking production systems, and confronting the humility of being the least skilled in a team. They emphasize that these challenging experiences, though difficult and unavoidable, are crucial for growth, resilience, and ultimately becoming a competent software engineer.
The speaker reflects on their journey from knowing nothing about coding to becoming a software engineer, highlighting that the path is far from a fairy tale. Despite leaving a stressful criminal lifestyle behind, they found that the pressures and self-doubt in software development were equally challenging. They emphasize that no amount of studying or AI can fully prepare developers for the emotional and professional challenges they will face, which they describe as three rites of passage common to every developer.
The first rite of passage is the desire to move beyond being the junior developer. The speaker shares their experience of wanting to be seen as an equal to their more experienced coworkers, which led them to take on challenging projects outside their comfort zone. This risk-taking, while essential for growth, also led to visible failures, such as writing inefficient code that caused system slowdowns. These failures, though painful, forced them to learn important concepts like big O notation and highlighted the tradeoff between playing it safe and growing through risk.
The second rite of passage involves breaking production—making mistakes that impact live systems. The speaker recounts a significant error they made as a senior engineering manager, where a small change caused users to be unable to complete orders, resulting in lost revenue. They stress the importance of quickly addressing such issues, learning from them, and improving systems to prevent recurrence. Managing the emotional toll by stepping away briefly and maintaining perspective is also key to handling these high-pressure situations effectively.
The final rite of passage is the humbling experience of being the least skilled engineer in the room. The speaker describes joining a small team where a colleague’s expertise made them feel inadequate, leading to self-doubt and hesitation. However, they realized that being around highly skilled peers is a valuable opportunity for growth, as it exposes one to new ways of thinking and working. This proximity, if embraced with an open mind, can accelerate learning and career development, despite the discomfort it may cause.
In conclusion, the speaker acknowledges that these rites of passage—moving beyond junior status, breaking production, and feeling outmatched—are difficult but essential parts of a developer’s career. They caution that these experiences cannot be avoided by tools or shortcuts and that enduring them ultimately builds resilience and competence. The speaker offers encouragement to those currently struggling, reminding them they are not alone and inviting them to share their own stories to foster a supportive community.