Skip to content

Commit

Permalink
Update engineering-manager.md
Browse files Browse the repository at this point in the history
Replaced prior EM page with the P&S team doc version - but stored the "old" version in Drive (there's a lot of good writing and thinking there). Open to proposals to include more of that in this page!
  • Loading branch information
aprilmj authored Feb 14, 2025
1 parent 0039990 commit f07dadd
Showing 1 changed file with 13 additions and 96 deletions.
109 changes: 13 additions & 96 deletions engineering/roles/engineering-manager.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,108 +3,25 @@

# Engineering Manager

The Engineering Manager is responsible for ensuring that our engineering team has clear direction in their work and personal development, and are able to thrive according to their goals.
They are responsible for creating a team culture and a system of roles and processes that makes our team successful, and allows our team members to thrive.
This role jointly leads our engineering team along with our _tech lead_.
The Engineering Manager focuses on creating a high functioning team. They work closely with the Technical Lead and Head of Products & Services to ensure that the engineering team is continuously improving and delivering.

## How it fits into our organizational structure
## Responsibilities

Reports to the Executive Director.
Members of the engineering team report to this person.
Co-leads strategy and policy of the engineering team alongside the Tech Lead.
Co-leads organizational priorities alongside other group leads.
### Managing engineering capacity & capability.
As our product evolves, our team will need to learn and adapt. The Engineering Manager is responsible for strategic professional development, ensuring that we grow the capabilities we need and use the capabilities we have well. They partner with the Technical Lead in identifying capability needs, hiring, advising team members, creating structures to grow capabilities, and evaluating our collective progress. Ultimately the Engineering Manager is responsible (and accountable) for the team’s engineering capacity and capabilities.

## Key responsibilities
### Health of our delivery.
They’re primarily responsible for the engineering group’s delivery of the socio-technical product we provide, by creating a team culture and a system of roles and processes that makes our product & services team successful, and allows our team members to thrive.

### Strategy, policy, and priorities for our cloud engineering team

- Set strategic objectives and major priorities in partnership with our Tech Lead and our engineering team.
- Advocate for the needs and goals of our engineering team in defining organizational and engineering goals, in partnership with the Executive Director and other group leads.
## How they work with the team
- Advocates for the needs and goals of our engineers in defining organizational and team goals, in partnership with the Executive Director and other group leads
- Owns systems of work - in partnership with the Delivery Enablement team, ensures engineering follows agreed processes and structures for managing work, following through on deliverables and holds ourselves accountable
- Makes sure work is consistently completed and showcased within each sprint
- Defines Site Reliability Engineering team practices - works with the team to build and manage processes that lead to a scalable, reliable service that minimizes toil and incidents (partners with Technical Lead for detailed monitoring)
- Leads mentorship & career development - fosters a growth mindset and a team culture that is inclusive, equitable, and remote-first, ensuring team members give and receive feedback and engineers get guidance that helps them grow and perform
- Manages people processes among engineers - makes sure team members are able to be productive as they’re hired, onboarded and offboarded successfully

### Site Reliability Engineering team practices

- Foster a team culture that is inclusive, equitable, and remote-first.
- Foster and participate in systems for feedback to team members, other group leaders, and our executive director to help them improve and embody our organizational values.
- Define team processes and structures for monitoring our cloud infrastructure, continually improving it, and resolving incidents.
- Ensure that our team processes lead to a scalable, reliable service that minimizes toil.
- Ensure an equitable balance of development and operations work across the team to minimize burnout.

### Our system of work

- Provide guidance and support to team members to prioritize their work
- Design systems of accountability that allow our team members to rely on one another and accomplish team goals.
- Help team members translate our strategic priorities and objectives into actionable work items.
- Provide medium- and long-term visibility over our strategic goals and whether we are on track for meeting them.

### Mentorship and career development

- Help our team members grow their skills and experience according to their interests and our team’s needs.
- Provide a balance of oversight and autonomy to team members.
- Run the performance review process for our engineers
- Recommend and advocate for training and personal development opportunities

## Useful qualities to have

### You are an experienced engineering leader

You have experience managing engineering teams, preferably experience with managing multiple engineering teams.
You lead by example and empathy, understand the business and how to prioritize project work, emphasize mentorship, and create an environment of learning.
You encourage diversity of ideas and know that the team is collectively stronger than any individual.

### You are an effective team builder

You know how to hire, train, and develop Site Reliability Engineers and operations leaders from all backgrounds.
You understand the benefits of building a diverse and inclusive team.
You value teamwork and believe in helping others feel safe to grow and develop.
You help your teams get better at what they do, and you don’t need to be in the same room to help them succeed.

### You can keep track of, prioritize, and manage multiple projects

We're a growing team, and there's no shortage of things you could be doing in a day.
You'll carve out time for functional projects and ensure the engineers on your teams solve issues that matter -- making our cloud infrastructure more efficient and agile, building a culture of reliability, and delivering outstanding service to the communities that we serve.

### You have excellent communication skills

You understand and appreciate what your stakeholders need and you can speak their language.
You’ll regularly work with our Product, Community Guidance, and Partnerships teams, balancing engineering concerns (such as technical debt) with product and service concerns.
Not only do you know how to share your knowledge with the team and write asynchronously-consumable documentation, but you know how to communicate your vision effectively with software and support teams.

### You have a background in Site Reliability Engineering

You’re comfortable talking about SLOs, incident management, and building a culture of reliability.
You have empathy for the communities we serve and are eager to make improvements for them.
You seek to reduce toil and understand what it means to take a software engineering approach to operations.

### You know the cloud

You’ve designed and maintained highly available, cloud-based infrastructures in AWS or another cloud offering.
You understand how to leverage infrastructure-as-code tools and have experience implementing best practices for reliability and observability.
We currently use Terraform, Kubernetes, GitHub, and JupyterHub.

### You have experience with open source communities

You’ve worked in one or more multi-stakeholder community-driven open source projects.
You understand the challenges and messiness that often comes with open communities, you have experience contributing to them, and an interest in growing a team that does most of its work via upstream contributions.
While 2i2c does not directly manage any open source communities, it aims to be an active participant in many, and upstreaming improvements to open source projects is a core part of our workflow.

### You value our values

2i2c is a mission-driven organization defined by [our values and principles](https://2i2c.org/about/).
You see how these values can empower meaningful work, thrive in a collaborative setting, and are eager to continue growing excited to be part of the team.

## Salary rationale

We are currently discussing our salary bands and levels for Engineering [as per this proposal](https://github.com/2i2c-org/meta/issues/402#issuecomment-1419224044).
According to that proposal (most likely to be implemented and already a reference for recent hires), this role is currently associated with the base salary corresponding to an Engineer Manager (level 4) role: https://docs.google.com/spreadsheets/d/1D_-RzXhyWw8jFs7KQQXKVRV4VrmOyXjQni2UTnk1044/edit#gid=0.

## References

- [A collection of engineering manager role descriptions from several tech companies](https://docs.google.com/document/d/1V3qfl0WlSlzq557mf9jqBNINuWRGw-nkgpFnpKibSOo/edit#).
- Blog post about deciding when to become an engineering manager: [blog post PDF](https://drive.google.com/file/d/1bSOEVBpYzdVvfEiWrmkqxrlu32kcaagW/view?usp=sharing) ([original blog link](https://charity.wtf/2019/01/04/engineering-management-the-pendulum-or-the-ladder/?utm_source=pocket_mylist)).
- [The Venn Diagram of Team Leaders](https://larahogan.me/blog/team-leader-venn-diagram/).
- Documentation about SRE management: [Google SRE Management Chapter](https://sre.google/sre-book/part-IV-management/).

## Acknowledgements

Many thanks to **Madhu V** and **Emma F** for providing feedback and suggestions about the overall structure and wording of this role description and our processes around hiring.
Much of the language above was inspired from Zapier’s Site Reliability Engineering descriptions.

0 comments on commit f07dadd

Please sign in to comment.