Administrivia: Reconsidering the Engineering and Management Tracks

At many companies, career progression is described by parallel engineering and management tracks. An engineer progresses by gaining more experience, addressing progressively more complex technical challenges, and having increasing influence over technical direction, architecture, technology trade-offs, quality, culture, and execution. Similarly, a manager progresses by supervising more people, having a broader and more critical scope of work, and providing increasing leadership over organizational objectives, strategy, risk management, alignment, staffing, culture, and execution.

What gets lost in the distinction between the engineering track and the management track is the allocation of administrative work. Without explicit attention to administrative work, it becomes implicit, cannibalizing the time of senior leaders, stifling their careers, limiting their creativity, and the organization’s ability to execute. Instead of drawing a binary distinction between engineering work and managerial work, it would benefit the industry to recognize our work falls into three categories: 1) engineering, 2) management, and 3) administration.

Engineering

Engineering is the work to design, build, integrate, evolve, optimize, or operate a product or a process. Engineering isn’t just about designing or building new things, it is also about improving existing products or processes to make them faster, cheaper, more scalable, higher quality, more secure, and so on. At an engineering company, the most junior engineers will be responsible for well-defined, independent tasks, whereas the most senior engineers will oversee multiple high-profile projects involving significant business risks, evaluate and introduce new technologies and solutions, all while leading and mentoring other engineers. Engineering is the essential work—without it, the administrative work and the managerial work serve no purpose.

Management

Managing includes project execution, recruiting, hiring, layoffs, mentoring, one-on-one meetings, performance reviews, promotions, team design, team culture, organizational objectives, and organizational values. Most people will think of these responsibilities as the job of a typical “manager”, but I see it differently: these must be shared responsibilities, a part of everyone’s job.

It would be silly for a manager to hire, promote, or write a performance review for someone without consulting with the engineers who have worked closely with the person they are evaluating—hands-on engineering work is a keen way to observe individuals, and the organization, in ways a manager cannot. All engineers should be involved in recruiting, interviewing, mentoring, giving feedback, in addition to shaping team culture and organizational values.[1] A junior engineer may serve on interview panels and mentor an intern while learning to embody organizational values, whereas a senior engineer may define and recruit for engineering roles, mentor many engineers, have a few direct reports, speak at internal or external conferences, and shape organizational values.

Furthermore, when engineers have agency, context, and clear objectives, superior outcomes are often achieved when they are also responsible for managing project execution, without the need for separate project management or product management functions.[2] Junior engineers can manage individual projects, while the most senior engineers can manage multiple projects that may span months or years and often cross organizational boundaries.

Administration

Administrative work is everything else, including roadmaps, status reporting, execution metrics, capacity planning, facilitating decision making, budgeting, approving timesheets, approving expense reports, approving time off, desk allocations, booking meetings, booking travel, scheduling training, immigration processing, software licensing, vendor agreements, non-disclosure agreements, procurement, purchase orders, and so much else. Just like engineering and managerial work, contributions vary depending on level. A manager might be directly responsible for some administrative work, whereas a director will build whole organizations to achieve some of these functions, like supervising product management or project management teams.

Administrative work can have an enormous impact on the success of an organization, but it can also develop into a huge burden. As engineers become more senior, administrative work can grow to steal all of their time, attention, and energy.

Reconsidering the Engineering and Management Tracks

While I recognize the importance of administrative work, it does not motivate me or hold my attention. I’m motivated by engineering and I’m motivated by management. However, because managerial work, as I have defined it, is part of everyone’s job—projects need to be delivered, performance reviews occur on a regular cadence, teams need to hire and retain talent—and the administrative work is impossible to ignore, the administrative work comes at the expense of engineering work. The more senior the engineer, the bigger the problem. In the limit, the most senior engineers will have substituted all of their engineering time with administrative work, at which point they will either reluctantly move to the management track as the only means of recognition and career advancement, or find a new job where they can unburden themselves from administrative work and refresh their engineering career, at least temporarily.[3][4]

Therefore, in an effective engineering organization, I view the management track as primarily responsible for management and administration, and the engineering track as primarily responsible for management and engineering. This means managers must thrive at managing people and thrive at administrative work. This breaks down when senior managers delegate too much managerial or administrative work and lose track of the burdens, or remain too involved in engineering or product development at the expensive of their administrative responsibilities, with engineers picking up the slack. It is especially harmful if engineers are filling gaps in product and project planning, or organizational alignment, and even worse if management roles are actually creating administrative burdens. Engineers end up spending all day in meetings “just in case” in order to have influence and access to information. Organizations often excuse the huge amount of administrative time spent on planning, roadmapping, and status reporting thinking it is only the “managers” who need to be involved.[5] But when you have managers deciding who will work on what, you ultimately have managers deciding on the architecture of the systems, not the engineers.

If we have managers deciding...which services will be built, by which teams, we implicitly have managers deciding on the systems architecture.
—Ruth Malman on Conway’s Law

The most senior managers usually have an executive assistant, commonly referred to as an EA, who can relieve them of administrative work. Its is important to protect the time of senior managers so they can stay involved in balancing risks and making strategic decisions, but they should involve their top engineers in these decisions and those engineers are often not similarly unburdened from administrative work.[6] Senior managers need to be especially careful that their EAs, or supporting functions like product or project managers, are not hiding the bureaucratic or administrative burdens of the organization from them, including inefficient support organizations like Human Resources (HR) or Information Technology (IT).[7] Although it doesn’t seem to be very common, it would be wise to support the most senior engineers with administrative assistants, or have administrative roles that serve the whole organization, not just management. At least from the outside, a few companies must pay attention to this, as they are able to retain some of their best engineers in highly technical roles, with or without direct reports.[8]

Product Management

How does the role of product management fit into this breakdown across engineering, management, and administrative work? Unfortunately, at most companies, product management is largely an administrative role. Or worse, it is a role focused only on ideas and not on execution. These roles actually create huge amounts of administrative work for engineers. There is a trend to eliminate narrowly focused product management roles and combine product, project, and program management functions in a single person.[9] Good product management will always involve some amount of administrative work, like roadmaps, capacity planning, aligning organizations, and status reporting, but product management is ultimately a creative role, a role of discovery, more like engineering. Therefore, the model applies equally to product management—you want product managers focused on product management, directly involved with customers and engineering teams, not overburdened by administrative work, and certainly not the genesis of it.[10]

Conclusion

I’m sure some people will think I’m splitting hairs, or point out that the administrative work is why we call it work in the first place. However, to make great products and services, outcomes are more important than output—you jeopardize great outcomes when you burden engineers with too much administrative output.

To deliver the best products and services, engineering companies need their top engineers leading the projects that demand exceptional innovation and operational excellence. Management, as I have defined it, is part of everyone’s job. This means we need to be explicit about who is responsible for the administrative work.

Consider defining the management track as primarily responsible for management and administration, and the engineering track as primarily responsible for management and engineering. Focus on getting more and more efficient at administrative work, as you would engineering or product development. Don’t let administrative work expand to fill the time. Ruthlessly eliminate administrative work whenever possible.[11] Multiply your best engineers by unburdening them from administrative work.[12]


  1. See my essay An Interview Process That Works For Me for more on including everyone in the interview process. ↩︎

  2. An executive who uses product managers only on a small number of projects once emphasize to me the importance of engineers owning product discussions and project execution in most cases: "Put someone with an MBA in this role and it won’t make any sense." In my first job, engineers would write the user documentation first, and iterate on it directly with the customer, before writing any software. ↩︎

  3. This also creates a shadow management track hierarchy where senior engineers are promoted into the management track, ultimately devaluing engineering titles despite reassurances that these two tracks have equal influence, compensation, and recognition. The titles in each track should be equivalent and it should be possible to move between the two. See Charity Major’s popular article The Engineer/Manager Pendulum. In an effective engineering organization, it should have at least as many principal engineers as directors, if not more, assuming, for the sake or argument, that those are equivalent positions on the engineering track and management track, respectively. These engineers should be heavily involved in management functions like strategic direction, feedback on promotions, and defining culture, organizational structure, and quality. ↩︎

  4. I often joke that another reason engineers change jobs is it takes a year or two to learn and become frustrated by the dysfunctions of the new organization. “Once a company reaches a certain size, to a first approximation, all of its technical problems are actually socio-technical ones.”—Lorin Hochstein ↩︎

  5. For more on administrative meetings, see my essay The Cost of a Meeting: Is the Daily Stand-Up Worth It? ↩︎

  6. Paradoxically, an EA can help a manager focus while also having a negative impact on engineering attention. For example, if the EA reschedules a meeting to fit the manager’s schedule but that cascades into an engineer then needing to manage the calendars or reschedule work for a handful of other engineers without the help of an EA. ↩︎

  7. When filing expense reports for travel, especially in a paperless world of tap-to-pay, do you make engineers scan and itemize receipts for meals? Do you even pay auditors to ensure they are only claiming money spent on food and not on alcohol? This is wasteful administrative bureaucracy. Pay the engineer a fixed per diem, be done with receipts and auditing, and get back to work. ↩︎

  8. Amazon seems to be one of these companies. I admire people like James Hamilton, Marc Brooker, and Andy Warfield who all have leadership positions but contribute significantly to engineering. Amazon does have the advantage of a breadth of engineering problems and at a scale that is unmatched at any other company. This may also play a role in retaining talent in spite of administrative burdens. ↩︎

  9. For a provocative evaluation of the product management role see the podcast episode Product Management Theater with Marty Cagan. ↩︎

  10. A colleague once said to me that when you look for a job you want to work for a great engineer or someone with a great product vision. Perhaps that should also include a company that unburdens people from administrative work so they can actually focus on product or engineering. ↩︎

  11. It is important to apply design processes—like Elon’s design process, which is 1) make your requirements less dumb, 2) delete the part or the process, 3) simplify or optimize, 4) accelerate cycle time, 5) automate—to administrative work, not just engineering. For example, there is no sense optimizing a project planning process, or a meeting, that should just be deleted in the first place. See also [7]. ↩︎

  12. I wrote this essay in part to reflect on how I want to continue my career in either the engineering track or the management track. ↩︎