"Why an Engineering Manager Should Not Review Code" and "Machine Learning, Illustrated: Incremental Learning"
Hatched by Faisal Humayun
May 29, 2024
3 min read
11 views
"Why an Engineering Manager Should Not Review Code" and "Machine Learning, Illustrated: Incremental Learning"
In the world of technology and software development, there are various roles and responsibilities that contribute to the success of a team. Two important roles that often intersect are that of an engineering manager and a technical lead. While these roles may seem similar on the surface, they have distinct differences in terms of skill sets and responsibilities. Understanding these differences is crucial for the smooth functioning of a team and maximizing its potential.
One key aspect is the manager-lead partnership. A successful team requires a strong partnership between the technical lead and engineering manager. This partnership should be built on clear boundaries and trust-building. Each role has its own focus - the technical lead concentrates on architecture and technical decisions, while the engineering manager should prioritize team communication and growth. It is through this partnership that the team can thrive and overcome challenges.
However, the size of the team plays a significant role in the differentiation of these roles. As the team grows and reaches a size of at least four members, the roles of the manager and technical lead become more defined and separate. This is primarily due to the increase in communication complexity. With each new member added to the team, the communication paths grow quadratically, leading to increased managerial responsibilities. In such cases, the engineering manager should refrain from reviewing code and instead focus on effective communication and facilitating the growth of team members.
Moreover, reviewing code as an engineering manager for a sufficiently sized team can be seen as micromanagement and a breach of trust. Trust and delegation are crucial for the success of a team, and by taking on the task of code review, the engineering manager may inadvertently undermine trust and hinder the team's progress. It is essential for the manager to trust the technical lead and empower them to make technical decisions.
So, what actionable advice can be derived from these insights? Here are three key actions that an engineering manager can take to optimize their role within a team:
-
Foster a strong partnership with the technical lead: It is important for the engineering manager to establish clear boundaries and build trust with the technical lead. This partnership should be based on open and effective communication, ensuring that each role can focus on its specific responsibilities.
-
Focus on team communication and growth: As the team size increases, the engineering manager should shift their focus towards facilitating effective communication within the team and fostering the growth of individual team members. This can be achieved through regular team meetings, one-on-one sessions, and mentorship opportunities.
-
Prioritize trust and delegation: Trust is the foundation of a successful team. As an engineering manager, it is crucial to trust the technical lead and delegate technical decisions to them. This empowers the technical lead and allows them to take ownership of their role, leading to a more efficient and productive team.
In conclusion, an engineering manager should refrain from reviewing code for a sufficiently sized team. Instead, they should prioritize trust, delegation, and effective communication. By understanding the distinct roles and responsibilities of an engineering manager and a technical lead, and by fostering a strong partnership between the two, a team can thrive and achieve its goals.
Sources
Hatch New Ideas with Glasp AI 🐣
Glasp AI allows you to hatch new ideas based on your curated content. Let's curate and create with Glasp AI :)
Start Hatching 🐣