Engineering Team Management

repo: kdeldycke/awesome-engineering-team-management
category: Business related: Engineering Strategy



<p align="center"> <i>The manager's function is not to make people work, but to make it possible for people to work.</i><br> — Tom DeMarco<sup id="intro-quote-ref"><a href="#intro-quote-def">[1]</a></sup> </p>

A curated Awesome list for software developers to transition to an engineering management role. Compiles advice, anecdotes, knowledge tidbits, discussions, industry small-talks and rants. A bibliography of sort, gathered the last few years while transitioning my career from a software engineer to an engineer's manager. And later from a manager to a manager's managers (you all love recursion right? ʘ‿ʘ).

  • You're a developer and wonders what it feels like to be a manager?
  • You just started your first position as the leader of a team?
  • You're stuck into the day-to-day operations of the job?
  • How can I move up to the next level?

You'll find answers in this guide! It stands out from generic leadership and management literature, by providing uncompromising insights and practical advice. It will bootstrap your journey into the management career track, from a technical background.

This list helps in the transition to management, with a progression from general to specifics. It starts with an overview of the role, then describes its requirements, and its position relative to others. Then we details the day-to-day tools of the trade, both organizational and behavioral. At last we discuss some of the dark sides of the job.

Contents

Engineering to Management Transition

The first step. The hardest. How to requalify oneself from an Individual Contributor (IC) to a front-line manager.

Building Teams

You got the title and the pay grade. Congratulation! This doesn't make you a manager yet. Whether you inherit an already existing team or have to start from scratch, you'll need to practice the art of building (and consolidating) them.

  • Building and Motivating Engineering Teams - What DO engineers want? Money, purpose and respect.

  • What Google Learned From Its Quest to Build the Perfect Team - “Google's data indicated that psychological safety, more than anything else, was critical to making a team work. (…) The behaviors that create psychological safety — conversational turn-taking and empathy — are part of the same unwritten rules we often turn to, as individuals, when we need to establish a bond.”

  • Paper we love: Software Engineering Organizations - “The practice of software engineering, and its history is, itself, a complex study in humanity, coordination, and communication.”

  • Developer Tropes: "Google does it" - It's cargo-cultish to imitate the big names in our industry as a path to success. Instead, the take home from this article “would be that managers and other leaders should be like ecologists; who measure, observe and nurture their ecosystems. Doing so will help build a unique workplace that will yield great results.”

Roles

On the profiles, attitude, behaviors, and expectations between developers, managers and executives.

Executives

Executives are the senior/highest management layers of a company. They reports to a board of directors in bigger companies, or directly to the shareholders in smaller ones. Leadership is expected at this level. As a manager these are the people you report to.

  • What do executives do, anyway? - Paraphrasing Andy Grove's book, High Output Management, “the job of an executive is: to define and enforce culture and values for their whole organization, and to ratify good decisions.” The article also details the failures modes of a CEO: forcing his own decisions downstream, or various ways of not resolving conflicts.

  • Executives ratify decisions made on the spot - Tolstoy's thesis to business.

  • Army Leadership and the Profession - Establishes and describes what leaders should be and do.

  • US Air Force's Strategic Leadership Studies - A reference of leadership's competencies and skills.

  • What Only the CEO Can Do - “1. Defining and interpreting the meaningful "outside" of the company; 2. Answering the two-part question: What business are we in and what business are we not in? 3. Balancing sufficient yield in the present with necessary investment in the future; 4. Shaping the values and standards of the organization.”

  • How CEOs Manage Time - A study on what CEO of large companies spent their time on, and how. Opens a new window into what leadership is all about and into its many components and dimensions.

  • Operations and Internal Communication Strategies For Effective CEOs - After insisting on the importance of context and narratives, the author provide an interesting template (good for inspiration) of ritual and recurring internal communication devices.

  • Regis McKenna's talk at Silicon Valley Leaders Symposium - “These are the things we (marketers) used to do with individuals and bodies. They've all become automated. The CIO is the marketing chief now.”

  • Narcissistic CEOs Weaken Collaboration and Integrity - “The prototypic visionary leader profile is so similar to that of a narcissist, if boards aren't careful, they're going to end up choosing people who are narcissistic as CEOs”.

  • “Hiring isn't the challenge. The challenge is finding people who can be effective while working for executives whose only qualifications and training are narcissistic levels of self confidence.” (source).

  • “The CEO positions himself as a controlling, micromanaging individual at the center of everything. This makes it possible for the CEO to intercept financials and other crucial numbers en route to people who might catch on.” (source) - Or how fraud can endure at the top level. That's generally why you need a board of directors as an oversight.

CTO & VP of Engineering

In tech companies these roles are critical, and the frontier between the two is often blurry.

Engineering Managers

Managers came in all form and shape, and the title and daily activities varies a lot depending on companies. When developers directly reports to you, you'll find yourself at the first management level: you are a front-line engineering manager.

Engineers

Consultants

  • “A consultant is someone 4 pages ahead in the manual” (source).

  • “The value that most orgs get from a consultant (…) is the political cover to make changes they knew they should make all along, but didn't have the social capital or the focus to make those changes” (source). And that's the reason bureaucracies and highly political organizations are fertile grounds for consultants.

  • The Prosperous Software Consultant - This article let you understand how an independent consultant operates.

Recruitment

You're in a competitive sector in which talents are in high demand. Be prepared as a manager to spend a lot of time recruiting people, either to expand your team or fill-in open positions. The dynamics gets interesting too, as you are now on both sides of the hiring process: as a candidate to get a job, and as a recruiter to staff up your team.

Job Boards

By targeting the right place to post your job offer to, you're increasing your chances of targeting the right candidates.

Hiring Process

High-growth company will all need to industrialize the hiring process at one point.

  • Why I Never Hire Brilliant Men - 5 simple rules for hiring men, from 1924. Things haven't changed a lot in a century.

  • A Good Tech Resume - A compilation of advice and example, but containing a good description of a typical hiring pipeline.

  • Job Interviewing Guide - A detailed description of a hiring process, a great source of inspiration for when your company gets big enough to start to formalize things up.

  • Open Sourced Interview Process - Cockroach Labs published their process “to create familiarity for candidates and account for bias, resulting in a better candidate experience and hiring decisions.”

  • Rethinking the Hiring Process - “Testing programmers at something they aren't actually expected to be good at and expecting to learn something about how they would work at your company is delusional, and I think these kind of interviews only serve to make the hiring team feel smarter and ensure better outcomes for engineers with traditional CS backgrounds.”

Interview

List of questions that can be used when vetting potential candidates, and topics to draw inspiration from to be used as conversation starters.

Coding Challenge

The absence of coding exercise will left the door open to fraud. OTOH, if elitist challenges decrease the number of false-positive, you will pass on perfectly capable and great developers. Now it is your job as manager to find balance between these two extremes, and set the tone on how to have the candidate demonstrate coding skills.

Negotiation

A critical step to close up the hiring process.

Onboarding

How to get newcomers up to speed with the rest of the team you manage. And how to introduce yourself to teams you just joined or inherited.

Motivation

Happiness

Procrastination

Culture

  • hacker-laws - Laws, Theories, Principles and Patterns that developers will find useful.

  • Adaptation vs adaptability - There is a spectrum between perfect efficiency and being completely flexible. This article explores ecosystems and the flows of material and energy between different organisms within the ecosystem. (hinted by HN comment)

  • The IT revolution and southern Europe's two lost decades - If you still doubt management culture could make or break an industry: “inefficient management practices have kept southern European firms from taking full advantage of the IT revolution”.

  • Meaningful differences that makes Google offices more productive - “The people are smarter, your manager (and their manager) cares a lot about you and it's easy to move.”

  • It's Not Enough to Be Right—You Also Have to Be Kind - “It's harder to be kind than clever”, or put another way by Abraham Joshua Heschel: “When I was young, I used to admire intelligent people; as I grow older, I admire kind people.”

  • “It is not your job to protect people (particularly senior management) from the consequences of their decisions. Make your decisions in your own best interest; it is up to the organization to make sure that your interest aligns with theirs.” (source).

  • “If you cannot disrupt a perverted culture by introducing a new culture, the politics of the perverted culture will work against you until you break, align, or leave. It is not unwise to leave before you break and it is easier to leave before you align.” (source) - At one point, even with the most unselfish of intentions, your attempts to elevate the culture might stall. It is not fair, but it's probably the time to leave.

  • You have only 4 options - “1. Change you; 2. Change the other; 3. Fly; 4. Stay and suffer.” A more concise way of saying the same thing as above.

  • Netflix Culture - “The actual company values, as opposed to the nice-sounding values, are shown by who gets rewarded, promoted, or let go.”

  • High Performance Organizations Reading List - A list of books, web pages, and videos about how to design better organizations, divided into 3 categories: organization and motivation, health and wellness, and software development specific.

  • [A Conversation with Werner Vogels, Learning from the Amazon technology platform](https://queue.acm.org/detail.cfm?id=1142065) - Scaling systems is not only a technical challenge. It has to be about teams and culture too. One lesson learned from the early days of AWS: “Giving developers operational responsibilities has greatly enhanced the quality of the services, both from a customer and a technology point of view. (…) You build it, you run it.”

  • The principles of Amazon service-oriented collaboration - A compilation of anonymous sources from AWS which ehoes the interview above: “teams are ostensibly autonomous and can make any important decision needed to meet their goals.”

Cognitive Tools

Thinking frameworks and mental models to improve decision making, understand systems and solve problems.

Collections

Expansive lists of well-known models and concepts.

  • Gigerenzer's simple rules - The reason we often relies on these simple heuristics: “outside the lab, in real world, we cannot do well with just with logical rationality, we need ecological rationality - the kind of thinking that helps us get what we want in an environment that's uncertain and dynamic. This means exercising our instincts, using simple but robust rules of thumb.”

  • The Best Way to Make Intelligent Decisions - A collection of 109 models.

  • Mental Models I Find Repeatedly Useful - Huge compiled list of mental models. Became the basis of book.

  • Tools for better thinking - “Collection of thinking tools and frameworks to help you solve problems, make decisions and understand systems.”

  • A Few Rules - A formalized list of some wisdom you probably encountered elsewhere.

  • Awesome Concepts - Laws, principles, mental models and cognitive biases.

  • UX Core - 105 cognitive biases with simple descriptions, brief and detailed examples.

Explaining

  • Hanlon's razor - “Never attribute to malice that which is adequately explained by stupidity.” My favorite flavor of Occam's Razor, and a crucial mantra to defuse rampant paranoia in a highly political setting.

  • Regression toward the mean - Or why after a period of intense euphoria and ambition, things slowly get back to their usual mediocrity.

  • Locus of control - A framework on “the degree to which people believe that they have control over the outcome of events in their lives, as opposed to external forces beyond their control.”

Problem Solving

  • First principles and asking why - “Our ability to think in abstractions can weaken our judgement, as those abstractions may no longer be as true as they once were. Also a similarly dangerous evolutionary trait is our ability to think in analogy, where we make assumptions based on the comparison of two things that are not actually related.” Elon Musk explains it better.

  • “People who excel at software design become convinced that they have a unique ability to understand any kind of system at all, from first principles, without prior training, thanks to their superior powers of analysis. Success in the artificially constructed world of software design promotes a dangerous confidence.” - A reminder of the needs of humility and recognition of limits in our industry, from a panel on the Moral Economy of Tech.

  • The Art of Powerful Questions - Catalyzing Insight, Innovation, and Action - “Leaders believe that they are being paid for fixing problems rather than for fostering breakthrough thinking.”

Systems

  • To Get Good, Go After The Metagame - “Every sufficiently interesting game has a metagame above it. This is the game about the game. It is often called 'the meta'. (…) The meta is what you get after you master boring fundamentals. But observing the state of the current meta often reveals what boring fundamentals you need to learn.”

Brainstorming

  • Yes, and… - “A rule-of-thumb in improvisational comedy (…). It is also used in business and other organizations as a principle that improves the effectiveness of the brainstorming process, fosters effective communication, and encourages the free sharing of ideas.”

  • Strong Opinions, Weakly Held — a framework for thinking - “Allow your intuition to guide you to a conclusion, no matter how imperfect — this is the 'strong opinion' part. Then – and this is the 'weakly held' part – prove yourself wrong.”

Behavioral

  • Programmer Interrupted - Research shows the devastating effect of interrupting developers: 1. 15 min is required to resume work; 2. A programmer get just one uninterrupted 2-hour session in a day; 3. Worst time to interrupt: during edits, searches & comprehension.

  • “People make bad choices if they're mad or scared or stressed.” - Disney's Frozen.

  • I coached CEOs, founders, VCs and other executive: These are the biggest takeaways - Excerpt: “We're all just big, complicated bags of emotion walking around; Power comes with the ability to receive a No; Learning to manage your focus, not your time.”

  • Intellectual Humility Cheat Sheet - “is about being open and able to change your mind about important things, and being able to discern when you should.”

  • Avoiding Intellectual Phase Lock - Anticipating an important result so much, humans by nature are susceptible to introduce subtle confirmation bias. To combat IPL, you might introduce random unknowns to suppress any attempt to game the system toward the object of your desire. I.e. avoid to cheat yourself to success.

  • The six ways to influence people - 6 universal principles of influence that are used to persuade business professionals: reciprocity, consistency, social proof, getting people to like you, authority and scarcity.

  • On Bullshit - This HN comment perfectly describes the concept. “Unlike lying/fraud, where falsehood is instrumental, Frankfurt defined bullshit as potentially false speech where the truth simply wasn't important. Bullshit is characterized by giving the surface appearance of confidence, intelligence, or a convincing argument; whether it's actually true or not is besides the point.”

Team Dynamics

On the day-to-day dynamics of the team, and its interaction with other teams.

  • How to Celebrate the Small Wins - My takeaway: “Celebrating Slow Progress; Hunt for Key Milestones”.

  • Team Leader Venn Diagram - “A tool for gaining a shared understanding of responsibilities”.

  • When your coworker does great work, tell their manager - Highlighting unseen work in public allows managers to recognize efforts their reports are doing. Still, there is some cases in which it might put your colleague in a tight spot. So always ask if it's ok first.

  • Eye Candy QA - Retelling of author's job at Apple: “John Louch was my boss. (…) John always shared everything with us, even the don't share this with your team stuff. We were people he trusted, so it was as it should be. It made you feel like you were part of something greater.” Or why sharing some open secret promote strong trust in your entourage.

  • The Apollo Syndrome - A phenomenon discovered by Dr Meredith Belbin, and exposed in his 1981 book on Management Teams, where teams of highly capable individuals can, collectively, perform badly.

  • A conversation with Elon Musk about Starship - In a team with very talented contributors, everyone's is a chief engineer: you are expected to challenge the status-quo and questions other department's constraints. This allow smart engineers to avoid the trap of optimizing for something that should not exist in the first place. Might be a cure for the Apollo Syndrome.

  • Symptoms of Groupthink - Overconfidence, tunnel vision and conformity pressure can led a group astray.

  • It's Not Sabotage, They're Drowning - Some kind of push backs shouldn't be interpreted as intentional sabotage, but as drowning people sinking the lifeboat in an attempt to save themselves.

  • “Community already exists, you just create a communication platform for it” (source) - Or why trying to create a community from the ground up might not be the right way of looking at things: a better and more subtle strategy would be to empowers the already existing channels and make them visible.

Engineering

You're no longer an engineer. Still, your team is responsible for the systems, technology and all the processes surrounding them. You'd better know a bit about engineering tenets.

The Technical Engineering Manager

You shouldn't spend your time coding. Leave that to the engineers: your value lies elsewhere now. But does that means you must forget all things technical? The answer is an astounding NO. Here are some arguments:

  • Do engineering managers need to be technical? - Yes. “Looking forward to the next 30 years of management trends, only a few things seem certain: Managers should be technical, and the definition of technical will continue to change.”

  • If Your Boss Could Do Your Job, You're More Likely to Be Happy at Work - “Although we found that many factors can matter for happiness at work – type of occupation, level of education, tenure, and industry are also significant, for instance – they don't even come close to mattering as much as the boss' technical competence.”

  • “The best managers I met tended to be those that if the circumstance required it, could do the job of those two levels below.” (source) - Another way of putting it: managers needs domain knowledge and to know the work their reports do.

  • “Over the years we have developed the policy that it is important for the supervisor to thoroughly know and understand the work of his group.” (source) - This quote is from David Packard (HP co-founder), decades before current management fad.

Systems Complexity

Whatever the technical stack, we are building systems first, and have to manage its complexity.


truncated — full list on GitHub

[[curator]]
I'm the Curator. I can help you navigate, organize, and curate this wiki. What would you like to do?