Are You Still Writing Code as an Engineering Manager?
Balancing coding with management duties is a challenge for EMs. This post explores why staying technical is crucial & provides strategies to maintain coding skills. Featuring insights from 10 real-life leaders, it offers advice for EMs to keep their technical edge while leading their teams.
The Engineering Manager role is nothing short of a constant juggling act. After project management, people management, and stakeholder management, there is often a minuscule room for anything else. With all these responsibilities at hand, one critical aspect that often gets overlooked is coding. When I used to be a full-time developer, my entire day would consist of pockets of coding sprints leading up to finishing up a feature or fixing a bug. As an EM, I would frequently stare at my calendar at the end of the week and wonder how did the week pass by so quickly. I have seen many EMs struggling to maintain their technical skills, wondering if it's still possible to write code while managing their teams effectively.
In this post, we will delve into the common dilemma faced by Engineering Managers regarding their involvement in coding. We will look at why it is important to keep honing technical skills despite the demanding nature of the role and share real-life examples of EMs who have successfully struck this balance. Whether you’re an experienced EM or new to the role, this guide will provide practical strategies and inspiration to stay technically sharp while leading your team to success.
The Role of an Engineering Manager
EMs take care of diverse responsibilities that extend far beyond technical tasks. First, project management involves planning, executing, and overseeing ongoing projects to ensure that they meet deadlines and quality standards. People management is another crucial aspect and EMs are expected to mentor, support, and evaluate their team members regularly. Finally, stakeholder management demands EMs to maintain clear and effective communication with other departments and external partners, aligning the team’s work with broader business goals.
Given all these responsibilities, time allocation becomes a balancing act for EMs. This shift can lead to a gradual decline in technical skills, making it challenging for EMs to stay current with the latest technological advancements.
The Importance of Staying Technical
Staying technical is crucial for Engineering Managers as it maintains their credibility within the team, earning trust and respect by being able to understand and contribute to technical discussions. Being technically proficient also helps in making informed decisions, whether it's evaluating the feasibility of a project or solving complex problems. Additionally, maintaining technical skills is essential for career growth, as it keeps EMs’ expertise relevant in a rapidly evolving tech industry, underscoring the need for continuous learning to adapt to new tools and methodologies.
Challenges of Balancing Coding and Management
Balancing coding with management tasks is a significant challenge for Engineering Managers due to time management issues, as finding time to code amidst meetings, planning, and people management can be difficult. This often leads to conflicts and trade-offs, where coding takes a backseat. There’s also the risk of skill degradation, as technical skills can become outdated without regular practice. Many EMs share real-life anecdotes about these struggles, like one who said, “I used to code daily, but now I can barely find an hour a week for it,” highlighting the common challenge of maintaining technical proficiency while managing a team.
Strategies to Stay Technical
Engineering Managers can stay technical by working on personal coding projects during their free time. These side projects provide an opportunity to explore new technologies and keep their skills sharp. Another effective strategy is participating in pair programming sessions with team members. This not only helps EMs stay connected with the codebase but also fosters collaboration and knowledge sharing. Actively engaging in code reviews is another way to maintain technical involvement, as it allows EMs to provide valuable feedback and stay updated on the team’s work.
Continuous learning is crucial for EMs to keep their skills relevant. Enrolling in online courses, attending workshops, and reading technical books, blogs, and documentation can help them stay current with industry trends. Additionally, scheduling regular time slots dedicated to coding ensures that EMs allocate specific periods for hands-on practice. Encouraging a culture where EMs can periodically contribute code helps integrate this practice into their routine, ensuring they remain technically proficient while managing their teams effectively.
Real-Life Examples
Here are 10 real-life examples of engineering leaders who have successfully stayed technical while leading their teams, providing practical insights and inspiration.
Michael Lopp (Rands)
- Background - Michael Lopp, known as Rands, is a veteran Engineering Manager and author of “Managing Humans.”
- Experience - Lopp has extensive experience in engineering management and has worked with several tech companies, sharing his insights through his popular blog and books.
- Key Strategies -
- Allocates specific times during the week to work on coding projects.
- Engages in ongoing learning through coding challenges and side projects.
- Takeaways - Lopp’s approach emphasizes the importance of structured time management and continuous engagement with coding to maintain technical skills while managing.
- Socials - Twitter, LinkedIn, Website
Camille Fournier
- Background - Camille Fournier is the former CTO of Rent the Runway and author of “The Manager’s Path.”
- Experience - Fournier has balanced coding with her managerial responsibilities by staying involved in technical discussions and mentoring.
- Key Strategies -
- Stays engaged in technical decision-making processes.
- Takes on manageable coding tasks.
- Uses mentoring sessions to keep up with new technologies.
- Takeaways - Fournier’s approach showcases the value of staying engaged in technical discussions and taking on small coding tasks to maintain technical relevance.
- Socials - Twitter, LinkedIn
Charity Majors
- Background - Charity Majors is the co-founder and CTO of Honeycomb.io.
- Experience - Majors maintains her technical skills by actively contributing to the codebase and engaging with the tech community.
- Key Strategies -
- Focuses on critical areas of the codebase.
- Engages in pair programming with her team.
- Shares her experiences through talks and blog posts.
- Takeaways - Majors’ method underscores the importance of targeted contributions and pair programming to maintain technical proficiency.
- Socials - Twitter, LinkedIn
Kelsey Hightower
- Background - Kelsey Hightower is a Distinguished Engineer and Developer Advocate at Google.
- Experience - Hightower stays technical by contributing to open-source projects and participating in coding workshops.
- Key Strategies -
- Actively contributes to open-source projects.
- Conducts and participates in tech conferences and workshops.
- Takeaways - Hightower’s experience highlights the value of open-source contributions and community engagement to stay technically active.
- Socials - Twitter, GitHub
Patrick Kua
- Background - Patrick Kua is a seasoned technical leader and former CTO of N26.
- Experience - Kua maintains his technical skills through regular coding practice and involvement in technical discussions.
- Key Strategies -
- Allocates specific times for coding projects.
- Stays engaged in architectural discussions.
- Shares knowledge through talks and workshops.
- Takeaways - Kua’s approach emphasizes the importance of dedicated coding time and active participation in technical discussions.
- Socials - Twitter, LinkedIn, Website
Julia Grace
- Background - Julia Grace is an Engineering Leader at Apple working on Siri and Apple Intelligence.
- Experience - Grace stays technical by being part of the decision-making process and sharing experiences through talks.
- Takeaways - Grace’s method illustrates the value of being involved in hands-on technical discussions and conferences in maintaining technical skills.
- Socials - Twitter, LinkedIn, Website
Randy Shoup
- Background - Randy Shoup is the former VP of Engineering at eBay and SVP of Engineering at Thrive Market.
- Experience - Shoup stays technical by engaging in critical projects and attending industry conferences.
- Key Strategies -
- Involves himself in critical projects.
- Engages in high-level technical decision-making.
- Attends conferences and panels.
- Takeaways - Shoup’s approach underscores the importance of hands-on involvement and industry engagement to stay technically proficient.
- Socials - Twitter, LinkedIn
Lara Hogan
- Background - Lara Hogan is a leadership coach and former VP of Engineering at Kickstarter.
- Experience - Hogan stays technical by working on small coding tasks and conducting technical interviews.
- Key Strategies -
- Focuses on manageable coding tasks.
- Conducts technical interviews to stay sharp.
- Takes online courses and reads technical books.
- Takeaways - Hogan’s approach emphasizes the importance of integrating small coding tasks and continuous learning.
- Socials - Twitter, LinkedIn
Meri Williams
- Background - Meri Williams is the CTO of Pleo and an experienced engineering leader.
- Experience - Williams stays technical by engaging in code reviews and mentoring team members.
- Key Strategies -
- Participates in decision-making processes.
- Engages in code reviews to stay updated.
- Mentors team members to stay connected with new technologies.
- Takeaways - Williams’ approach shows the importance of code reviews and mentorship in maintaining technical skills.
- Socials - Twitter, LinkedIn
Will Larson
- Background - Will Larson is the CTO of Carta, previously CTO of Calm, Head of Foundation Engineering at Stripe, and author of “An Elegant Puzzle.”
- Experience - Larson keeps his technical skills sharp by contributing to the codebase and writing technical blog posts.
- Key Strategies -
- Frequently contributes to the codebase.
- Writes blog posts to explore and share knowledge.
- Encourages continuous learning within his team.
- Takeaways - Larson’s approach highlights the importance of regular coding contributions and technical writing.
- Socials - Twitter, LinkedIn, Website
James Turnbull
- Background - James Turnbull is the CTO at Smatrr and the author of several technical books.
- Experience - Turnbull maintains his technical edge by contributing to open-source projects and writing technical books.
- Key Strategies -
- Actively contributes to open-source projects.
- Writes books and articles to explore new technologies.
- Builds tools to improve team productivity.
- Takeaways - Turnbull’s strategy demonstrates the value of open-source contributions and technical writing.
- Socials - Twitter, LinkedIn, Website, GitHub