Advice, Engineering Manager

The Roles & Responsibilities of an Engineering Manager

"What are the roles and responsibilities of an engineering manager?", is an incredibly common question that many engineering managers ask. It's a good question to ask because you need to know what you're expected to do. However, the better or accompanying question that an engineering manager should ask is, "How is the success of the role measured?"

In this article, I am going to share the role and responsibilities of an engineering manager working for a tech company.

Measure of Success

The success of an engineering manager is measured across three dimensions:

  1. Value shipped to customers. Usually in the form of features that customers can use to help them achieve their goals such as an ability to search for a particular product at an e-commerce store or an ability to track your personal expenses.
  2. Reliability of the underlying services. Platform reliability is often neglected because the work done on reliability is not easily visible like features. However, it's extremely important because whatever you are shipping to customers will not reach its full potential if it's slow, insecure, full of errors, or inaccessible. Reliability includes not just uptime, but also security and performance.
  3. Team engagement. When a team is high performing, the outcomes that the team produced multiplied. A few indicators of a high-performing team are they work towards a shared goal but are not afraid to challenge each other in order to achieve the shared goal; they enjoy working with each other; they have fun; they collaborate well, and last but not least, they take calrisks and they are always improving themselves.

Logistics

Team shape and size

4–7 engineers: Small
8–11 engineers: Medium
12+ engineers: Large. May need to consider splitting it off

Team leadership

Team leadership consists of an engineering manager, UX designer, product manager, data analyst, product marketing manager, etc.
sometimes, you don't always have the full leadership group (nor do you always need a full group - it depends on the project/work)

Responsibilities

The responsibilities of a team (which is the accountability of an engineering manager) broadly fall into three domains.

Pre-delivery
Understanding of context
Discovery

Delivery
Feature kick-off
Build features
Roll-out features
Set up necessary monitoring and alerting
Support readiness

Post-delivery
Operations
Bugs review
Metrics & monitoring (frontend, backend, engagement, funnel)

Processes
Standardised ways of working on areas such as discovery process, release process, deployment process, bug fix process, just to name a few.
Timely updates to stakeholders
On-call rotation and runbooks

In collaboration with the team leadership, engineering managers are responsible for:

  • Shared understanding of vision and goals
  • Prioritisation of work
  • Liaise with other teams
  • Set up the team for success
  • Roadmap discovery
  • Delivery
  • Team health
  • Provide context and explain the why
  • Remove blockers (eg: decision making, internal or external dependency)

Recommendation for Working in a Leadership Group With People From Different Disciplines

  • Run a role and responsibilities play to have a shared understanding and clear accountability
  • Challenge each other respectfully
  • Wear each other's hat when appropriate, e.g., what would my product manager say, how would the end user use this feature, etc.

Rituals/Meetings

Stand-ups
Planning
Estimation
Retros
Demo
Engineering mirror / Lean coffee ^
1on1s
Team operational check-in
Catch up with leadership
Catch up with stakeholders
Program level or project team meetings
Managers-only meeting #
Performance assessment #
Compensation review #

^ optional
`# managers only, confidential

Activities

Some activities that managers should do are as follows (not an exhaustive list):

  • Share feedback and research from customers to help the team understand their contribution to the value delivered.
  • Share survey results on how each team member is feeling to help the team understand their contribution to team engagement.
  • Have engineering metrics such as code quality, uptime, service level objectives, etc., to help the team understand their contribution to reliability.
  • Look for opportunities to take ownership of product decisions. Look for two-way doors for lower-risk decisions. Use strategic vision, roadmap, data, customer value, engineering effort, etc. to inform decisions.
  • Strengthen the awareness of customers of the team by leading by example in getting involved in customer interviews, collaborating on research synthesis, design brainstorming, etc.
  • Ensure that quality is part of the Definition of Done for every work.

Common Pitfalls

Engineering managers who have the responsibility of being a multiplier instead of a maker need to understand and avoid deadly mistakes, as their mistakes not only have an impact on themselves and their careers but also on the teams that they look after. With great power comes great responsibility.

  • They deep-dive into code and code reviews in order to understand the complexity of a project
  • They give in to their fear of missing out (FOMO)
  • They think too logically and fail to acknowledge team members' feelings
  • They underestimate the importance of adjacent disciplines such as product, design, and marketing
  • They underestimate the importance of adjacent disciplines such as product, design, and marketing

Words of Advice

My words of advice for all engineering managers regardless of whether they are at the beginning of their careers or they are seasoned managers: Be mindful about how and why you're showing up and doing what you do every day. When you make a mistake, own it, learn from it, and move forward. Transparency and authenticity always win.

Be a leader - not just a manager.