Book Image

Engineering Manager's Handbook

By : Morgan Evans
Book Image

Engineering Manager's Handbook

By: Morgan Evans

Overview of this book

Delightful and customer-centric digital products have become an expectation in the world of business. Engineering managers are uniquely positioned to impact the success of these products and the software systems that power them. Skillful managers guide their teams and companies to develop functional and maintainable systems. This book helps you find your footing as an engineering manager, develop your leadership style, balance your time between engineering and managing, build successful engineering teams in different settings, and work within constraints without sacrificing technical standards or team empathy. You’ll learn practical techniques for establishing trust, developing beneficial habits, and creating a cohesive and high-performing engineering team. You’ll discover effective strategies to guide and contribute to your team’s efforts, facilitating productivity and collaboration. By the end of this book, you’ll have the tools and knowledge necessary to thrive as an engineering manager. Whether you’re just starting out in your role or seeking to enhance your leadership capabilities, this handbook will empower you to make a lasting impact and drive success in your organization.
Table of Contents (24 chapters)
1
Part 1: The Case for Engineering Management
5
Part 2: Engineering
9
Part 3: Managing
15
Part 4: Transitioning
19
Part 5: Long-Term Strategies

What are engineering managers responsible for?

An engineering manager’s position exists to provide engineering teams with day-to-day leadership and representation. They keep alignment within the team and serve as the team’s representative in cross-functional and leadership settings. In other words, engineering managers exist to produce long-term successful outcomes for engineers and companies.

When considering engineering manager responsibilities, you might think of a litany of tasks. Timely project delivery! Robust systems design! Mentoring! Hiring! The list goes on endlessly. The day-to-day tasks of an engineering manager are variable, but the broad responsibilities are the same: maintaining a team capable of serving the needs of the business, producing mechanisms to make the team self-sustaining and scalable, and owning the reputation and impact of the team.

This definition may leave you wondering: where are the fun parts? What about growing and teaching and building a strong engineering culture? While each of these things is important in its own right, an engineering manager should understand the order of operations: that these practices result from the necessity of producing good work, not the other way around. Your responsibility is not to produce good engineering culture; it is to produce good work that serves the needs of the business. Great engineering practices must result from the intention to produce great engineering work.

Let’s go through each of these responsibilities in turn.

Maintaining a team capable of serving business needs

Engineering managers set their teams up for success by understanding the business and organizational settings they are in and preparing their engineers to thrive in those settings. As illustrated in Figure 1.1, engineering managers interpret a variety of inputs to determine how best to direct their team. This responsibility may require attention to many areas, such as ways of working, technology choices, staffing, team culture, and cross-functional interactions. While we may only know so much at a given time, it’s helpful to consider anticipated future changes in needs as well as emerging technology trends:

Figure 1.1 – Engineering manager inputs and outputs

Figure 1.1 – Engineering manager inputs and outputs

Here are some questions you can use to consider this:

  • Is my team working closely enough with business leaders to understand their domain and needs?
  • Is my team capable of serving those business needs today or is it a stretch?
  • Do we have the tools and processes we need to deliver?
  • Do we have the talent we need on the team?
  • Do we have the supporting cross-functional roles we need to do great engineering work?
  • Do we have a shared vision to be inspired and make consistent choices?
  • Do we have the support and guidance to grow and improve as engineers?

Not all of these considerations may be under your direct control to change, but they are still helpful to identify. It may be that you will need to spend more of your time influencing factors outside of the engineering team to help your team and company be successful.

Producing mechanisms to be self-sustaining and scalable

Engineering managers have a responsibility to optimize their teams. They improve engineering workflows and reduce dependencies and repetitive tasks. Self-sustaining teams minimize dependencies that hinder them in their efforts to achieve their objectives. Scalable teams minimize software delivery steps and eliminate bottlenecks. The mechanisms to achieve this may include the use of tools, conventions, documentation, processes, or abstract things such as values and principles. Any action that produces a tangible improvement in the speed, reliability, or robustness of your team’s work is worth your consideration.

Theme – continuous improvement

In this chapter, we will introduce traits shared by experienced engineering managers that serve as recurring themes in this book. Great engineering managers are obsessed with continuous improvement for themselves and their engineering teams. They believe that there is always room for improvement and are open to new perspectives to that end.

Here are some questions you can use to consider how self-sustaining and scalable your team is today:

  • What dependencies do we have on other teams?
  • What dependencies do other teams have on us? Do we have clear contracts and interfaces that other teams can rely on?
  • When we onboard a new engineer, how much time does that take from the existing engineering team?
  • How much of our time is spent on manual interventions (such as responding to and resolving incidents)?
  • Do we have the culture and values to be harmonious and productive?
  • How do we respond to unexpected events? Are we resilient as an engineering team or are we brittle?
  • Are roles and responsibilities clear for us and our cross-functional partners?
  • Are we able to measure our work output and performance as a team?
  • How many of our core processes rely on meetings?
  • How many of our core processes have a single point of failure (SPOF)?

Answer these questions for yourself, honestly and without judgment. You will have plenty of time to formulate a plan to address areas for improvement as you settle into the role of engineering manager.

Owning the reputation and impact of the team

Engineering managers have a responsibility for their team’s performance and output. They maintain awareness of the engineering team’s commitments and progress. They act as a resource to help engineers do their best work. They cultivate sources of information outside of the team to have a balanced view of how their team is doing.

Here are some questions you can use to consider this:

  • Am I currently aware of my team’s reputation? Is it a strong reputation?
  • Do engineers on other teams know what my team does?
  • Do engineers on other teams like working with my team? Why or why not?
  • Do people outside of engineering know what my team does?
  • Do non-engineers like working with my team? Why or why not?
  • Is my team impactful? Does it find ways to innovate and deliver creative solutions that produce a competitive advantage?
  • Does company leadership understand the capabilities and value of my team?
  • Is my team celebrated?

If you find that you don’t know the answers to most of these questions, that is okay! You now have some talking points and information to gather for later.

So, now that we understand the general responsibilities of engineering managers, let’s go through the activities and tasks that managers perform in service to these responsibilities.