My Philosophy of Engineering Management
There's a question I always ask when interviewing with (or for) an engineering manager: what's your philosophy of management. There's no "right" answer, but there's definitely a wrong answer and I'm always a little concerned when someone can't give an answer at all (I give a pass to junior or first-time managers).
What I'm trying to uncover with this question is what fundamental beliefs and priorities shape their daily actions and decisions related to everything from project management, team/organization design, hiring and mentoring. I'm not looking for a description of the actions themselves. For example, if someone says I don't like to micromanage, that's great but it's also a behavior and I'm more interested in understanding why they don't.
Considering the leverage that managers can exert, the often very-long feedback loop and the difficulty of managing through managers, it's critical that managers have a coherent philosophy and one that's aligned with the culture of the organization.
Here's the philosophy I've cobbled together over the years based on experience and thoughts from many other very-good managers and leaders.
Although every organization has its own unique set of goals and constraints, there are few things that are always top of mind:
- A culture where teams feel a strong sense of ownership over decisions and the outcome of those decisions.
- An environment where teams are autonomous and nimble and can act on their decisions quickly and decisively.
- A culture where teams can experiment and iterate often, and they feel a sense of psychological safety that allow them to take risks and make mistakes.
- An environment that's conducive to effective delivery - "Effective" can mean many things from development velocity to system reliability, but I'm choosing to keep it vague since companies and even individual teams will view things very differently. Despite the challenges of measuring coding velocity, for example, many companies choose to focus on that. Whether those are good metrics and whether anything that becomes a target remains a good metric, I'll leave to another debate.
- An environment that maximizes job satisfaction and promotes on-going employee growth and development.
The Four Tenets
There are four core dimensions to the job which I use to frame every situation, decision and action:
- Strategy - Based on some desired or assumed future state, this is the collection of bets and the plan I believe will get the team there.
- Technology - Often a subset of strategy, this is the technical choices and tradeoffs that are made to accomplish some goal state.
- Operations - This is the collection of operational choices that are adopted to help organize people and work, and ensure that a team works at optimum output.
- People - These are all of the various hiring, staffing and organizational-design decisions.