Skip to content
👔 Engineering Team Management Knowledge Base
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/workflows
CONTRIBUTING.md
README.md

README.md

👔 Awesome Engineering Team Management

A compilation of advices, 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? ʘ‿ʘ).

It is on this substrate that I crafted my management style, as I found anchoring the later with the usual labels is way too limiting and short-sighted. Limiting as management is both of an art and a science. And short-sighted as a style shouldn't be taken at face-value and always be sensible to our fellow humans talents and the business context of the company.

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

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.
  • Paper we love: Software Engineering Organizations - The practice of software engineering, and its history is, itself, a complex study in humanity, coordination, and communication..
  • Teams are like bread - If you have one team where the magic is flourishing, don't kill it. Feed it, grow it, and let it be a source of further strong teams. No rushing..
  • 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.

Managers

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.

Recruitment

Motivation

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 - TL;DR: 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..
  • FizzBuzz Enterprise Edition - A satire of over-engineering for the sake of enterprise-grade software.
  • 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.

Cognitive Tools

  • Mental Models I Find Repeatedly Useful - Huge compiled list of mental models. Became the basis of book.
  • Hanlon's_razor: Never attribute to malice that which is adequately explained by stupidity. - My favorite flavor of Occam's Razor, critical in defusing 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..
  • Second-system effect - Tendency of small, elegant, and successful systems, to be succeeded by over-engineered, bloated systems.
  • Coglode: bite-size behavioral research analysis - Mostly applied behavior insights to help you build up strategies and tactics on product, design and planning.
  • 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..
  • The Efficiency-Destroying Magic of Tidying Up - Efficiency tends to look messy, and good looks tend to be inefficient.. A reminder that sometimes we should just accept the messiness of the world.
  • 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..
  • 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..
  • 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.
  • 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.
  • I thought that using loops was cheating… - How much is too much? Libraries, wether software or audio loops, are tools. A typical case of NIH syndrome transposed to music production.

Team Dynamics

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

  • How to Celebrate the Small Wins
  • Team Leader Venn Diagram - A tool for gaining a shared understanding of responsibilities.
  • 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.
  • 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.
  • 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 enhance the already existing channels.
  • Why Should Code Reviews Be Fast? (..) [To] optimize for the speed at which a team of developers can produce a product together, as opposed to optimizing for the speed at which an individual developer can write code. (source), from Google Engineering Practices.
  • Goodbye, Clean Code - My boss invited me for a one-on-one chat where they politely asked me to revert my change. I was aghast. The old code was a mess, and mine was clean! (...) I see now that my “refactoring” was a disaster in two ways: I didn't talk to the person who wrote it; My code traded the ability to change requirements for reduced duplication.

Remote Work

Meetings

The most important meetings you'll have are frequent 1:1s with your direct reports.

Facilities

The environment we work in shapes us. Perks too.

Product Management

In a team, the Product Manager is supposed to be the "voice of the market".

Project Management

Agile

  • The Good, the Bad and the Ugly Standup - Author experienced 3 formats of standups before ending with one working for his team, and concludes that the details that make up a good meeting are subtle and the pursuit of an artificial standard of aesthetics will prevent you from doing the necessary experimentation to improve from an ugly equilibrium.
  • Why do some developers at Google consider Agile development to be nonsense? - Because the short-term focused Scrum processes seem suited to particular types of development, most notably consulting or contract programming, where the customer is external to the organizations, runs the show because they are paying for development, and can change their mind at any time. Still, google engineers already practice a culture close to what looks like the 10-points Agile manifesto. But that's it.
  • Detecting Agile Bullshit - US Departement of Defense guide to detect software projects that are really using agile development versus those that are simply waterfall or spiral development in agile clothing (“agile-scrum-fall”).
  • Who are you trying to impress with your deadlines? - There are companies where those deadlines are set in stone, and a missed deadline is next to fire. That's when the problem starts..
  • The fundamental problem that drives most agile failures isn't in the team's execution, it's in the business' expectations. One side is signed up for incremental delivery, and one side is set up for a fixed scope and deadline and the result is misery. (source)

Key Performance Indicator (KPI)

KPIs are a set of quantitative measurements at the team or organizational level, to measure the success of the business.

  • Numerical goals set for other people, without a road map to reach the goal, have effects opposite to the effects sought. - W. Edwards Deming
  • SRE fundamentals: SLIs, SLAs and SLOs - If you are in the business of cloud services, these metrics are certainly great KPIs.
  • My team tracks life impact as a metric (pages outside business hours) and works to drive that down to zero. (source) - Maybe the best indicator of a happy team is how little it is disturbed outside office hours.
  • The 4 Worst Software Metrics Agitating Developers in 2019 - The worst KPIs to track a software team output: Lines of Code, Commit Count, Issues Resolved (aka “Shipping Velocity”) and Code Churn (aka "Efficiency").

Objectives and Key Results (OKR)

OKRs are a framework. Extending KPIs, they applies individually to each members of an organization, down to the IC level. In theory, everyone is supposed to have its own set of OKRs.

  • OKRs from a development team's perspective - On how OKRs articulates with a backlog.
  • One way in which I've seen OKRs used effectively is as a defense against the type of middle or upper manager who is constantly coming up with new ideas or tasks. (source) - Or how OKRs can be weaponized to prevent top managers to mess with the (already established) schedule.
  • Why individual OKRs don't work for us - Spotify decision to stop using OKRs for individuals.
  • Google's usage of OKRs - OKR grades are public, but not used for promotion. It was never taken very seriously there.

Training

On mentoring, education and learning.

Literacy

It is not only about reading and writing. It encompass all the social practice, context sharing and communication surrounding the activity and production of a team.

Especially a software team, which will generate a huge amount of knowledge. All this knowledge is fragile and about to be lost for good. Unless you materialization it in the form of writing.

Knowledge

On knowledge surrounding a team.

  • What senior engineers do: fix knowledge holes - This is the textbook definition of a senior engineer. You see a problem, you solve it (thoroughly), you document it and you level up your team..
  • Chesterton's fence - If you're considering nominating something for deletion, or changing a policy, because it doesn't appear to have any use or purpose, research its history first.. It's not we'd like to play conservative here, but because we need to fix the knowledge hole as described above.
  • You're Not Managing a Team of Software Engineers, You're Managing a Team of Writers - Because writing software is a creative process which is by its nature unpredictable and personal, in an environment which craves certainty, predictability and consistency..

Reading

Before you know how to write, you need to know how to read.

  • How to Read a Paper - Outlines a practical and efficient three-pass method for reading research papers.

Documentation

The various forms of technical writing, their structure and target audience.

  • What nobody tells you about documentation - There is four kinds of documentation: tutorials, how-to guides, explanation and reference. Each with their own structure and mode of writing.
  • Flying Circus Platform - Disaster recovery - Critical infrastructure which aims to be available 24/7 needs a Disaster Recovery Plan. It generally takes the form of a document providing an overview of the expected severe failures and a set of procedures on how the system and the team operating it is prepared to deal with. The one linked here is a great example of such document, and is strong evidence the team is prepared for the worse.

Writing

General advices on how to convey meaning and clarity by mastering the style. If badly written, your documentation is likely to have poor usage and utility.

Career

Now that you've proven your worth as a front-line manager, what's the next step? These articles explore the follow-up roles, from managing managers, to director, and everything in between.

Compensation

It's not only about the salary, but the whole package: equity, bonus, perks, and the tractations around all of these. As a manager, writing reviews and performance evaluations are the tool of the trade for your team members to get a raise.

  • levels.fyi - Compares salary range and compensation charts across big tech companies.
  • L8-L10 salaries at AWS.
  • Never accept a lower salary in exchange for equity. (source)
  • On VC funding and huge growth - Startups need an exit strategy. (...) The idea is to raise money fast, hire experienced people for ancillary services and develop the application in a way so that it is able to hold up till IPO. Defer all costs for post IPO.. TL;DR: the only reason to join a startup is for future money windfall.
  • Incentive Pay Considered Harmful - Incentives (or bribes) simply can't work in the workplace. Most software managers have no choice but to go along with performance review systems that are already in place. If you're in this position, the only way to prevent teamicide is to simply give everyone on your team a gushing review.
  • If anything in your performance review is a surprise, then I have failed as a manager. (source).
  • The system a software developer works in shapes their performance so much more than individual differences. (source).
  • Performance review generator - Tired of writing reviews? Automate it!

Politics

Here we are, at the intersection of power and influence lies the political game. If its nature and intensity is sourced from the company's core culture and history, you're unfortunately unlikely to avoid it past a certain hierarchical level. So be prepared.

  • HiPPO FAQ - HiPPO stands for Highest Paid Person's Opinion, a trait of dysfunctional culture, in which power politics trumps data.
  • The Prince - Machiavelli's ideas on how to accrue honor and power as a leader. Resorting to that level of politics in a company is a sure way to render the culture highly toxic, as well as corrupting and demoralizing the organization at all levels.
  • The Gervais Principle - A cynical, bleak, but still fascinating take on the management ladder, based on The Office.
  • The 48 Laws of Power by Robert Greene - Can teach you how to cover your ass and be effective in a highly political org.
  • Selectorate theory - In selectorate theory, three groups of people affect leaders. These groups are the nominal selectorate, the real selectorate, and the winning coalition. (…) To remain in power, leaders must maintain their winning coalition..
  • Playing the game well is now front and center (source), or why the Key practices for achieving large professional goals is missing the parts about office politics.
  • Company I've worked for had manager who tried to ship features over the weekend with a ragtag team of developers who don't understand why that's a bad idea. - Tactics of hustling managers, and how the company reacting to that kind of manager makes or break a good place to work.
  • The actual power wielded by a high level executive is usually inversely proportional to the size of the organization they manage. (source: comment on Why large companies are so difficult to rescue).
  • Cutting costs gets you a raise. Delivering a big project is a path to promotion. (source)
  • "You know your game fails when you read in the news about the feature you are supposed to have". (source). A team learning about its roadmap at the same time of the general public is a sure sign something is wrong.

Re-organizations

  • If you have dealt with large, completely incompetent organizations and wondered how the hell they actually keep going - theres your answer. If built correctly it's genuinely difficult to mess things up. (source). I.e. the structure of the organization is quintessential to its longevity.
  • If I Close My Data Centers, What About the People/Jobs Lost? - F50's data centers being migrated to commercial cloud provider. But what about the people currently doing legacy stuff? The answer: retrain.
  • This is the managerialist dream. To replace employees' judgement and competence with a process and management methodology. (…) It never works. (source). And why the retraining answer above is the best one.
  • An Alternative Approach to Re-Orgs At Your Company - Trying not to repeat re-org mistakes, we started working on a structure that would make the re-org act like a feedback-fueled progress driven by the teams instead of by people above them.. This is an attempt to extract from the ground up signals pointing to inadequate structure. My cautionary tale: this might only work up to a point depending on the company's culture.
  • When everything is great success, people behind that success shadow the people who could make success in the future. (…) Netflix is great example of how to do big transition right. Netflix was in renting DVDs by mail business. When the decision to move to streaming was made, Netflix CEO did not allow managers who responsible for DVD renting business into meetings where the future was planned. (source).
  • I've Built Multiple Growth Teams. Here's Why I Won't Do It Again. - Few folks understand probability, and most executives don't care about the data—regardless of what it says..
  • Speaking Truth to Power: Reflections on My Career at Microsoft - After 3 decades in a deeply flawed company, the author comes to a humble conclusion: leaders should embodies the value of their employees. Not the other way around. Changes at the top — not speeches, training or hashtags — make the most cultural impact. If you want real and lasting cultural change, sweep away the made-men who succeeded under the previous culture and promote the people who look, act, and think more like their employees than their managers..
  • How the Digg team was acquihired - Acqui-hire of a whole team can be seen as a type of reorg. In which managers will have to negotiate the new employment contracts in bulk in one or two days: Because acquihires are “star” oriented, if you're a senior leaders who doesn't explicitly refuse to move forward, pressure will converge on you from all sides.

Stress & Burnout

  • The Toxic Handler: Organizational Hero — and Casualty - toxic handler, a manager who voluntarily shoulders the sadness, frustration, bitterness, and anger that are endemic to organizational life. Although toxic handlers may be found at every level in organizations, many work near the top.
  • Manager Energy Drain - How do I handle how tired I am as a manager? 1. Defrag your calendar; 2. Delegate messy and unscoped projects; 3. Say no..
  • Should we take a few long holidays, or lots of short ones? - TL;DR: short ones. Reason one: holiday memories tend to depend not on how long the holiday was, but on the intensity of the experiences. Reason two: a change of activity can be a spur to creativity. Reason three for taking a short break: if we need rest to prevent exhaustion, a single, long vacation won't do the trick..
  • How Slack Harms Projects - TL;DR: promote a false sense of urgency, destroy focus, allow for bypassing project prioritization, strip away essential business context, encourage poorly thought-out communication. To remediate this, see How to Use Slack and Not Go Crazy article.
  • Examples of harassments - How a jealous boss, who felt either betrayed or ridiculed, bullied a capable employee to force him out. Don't be that kind of asshole boss.
  • If You're So Successful, Why Are You Still Working 70 Hours a Week? - Our tendency to overwork and burn out is framed by a complex combination of factors involving our profession, our organization, and ourselves. At the heart of it is insecurity..
  • What Happens When Your Career Becomes Your Whole Identity - A particular confluence of high achievement, intense competitiveness, and culture of overwork has caught many in a perfect storm of career enmeshment and burnout..
  • In my experience extreme workaholism can often be a way to avoid or defer major life decisions that someone doesn't want to make or even consciously recognize. (…) Eventually the debt comes due but sometimes not until many decades later. (source)
  • Avoiding burnout as an ambitious developer - Be willing to say no; Know what you don't want; Use your energy level realistically; Be kind to your future self.
  • Average tenure of a CISO is just 26 months due to high stress and burnout - Today, CISO jobs come with low budgets, long working hours, a lack of power on executive boards, a diminishing pool of trained professionals they can hire, but also a constant stress of not having done enough to secure the company's infrastructure against cyber-attacks, continuous pressure due to newly arising threats, and little thanks for the good work done, but all the blame if everything goes wrong..

Setbacks and Failures

  • What does not kill me makes me stronger, Friedrich Nietzsche - Brutal, but with a grain of truth.
  • Early-career setback and future career impact - Despite an early setback, individuals with near misses systematically outperform those with narrow wins in the longer run..
  • Huge success in business is largely based on luck - Management research and education should focus on prescriptive theories that can help business practitioners move from “incompetent to OK”, rather than focusing on those that address how to move from “good to great”..
  • How Complex Systems Fail - Short treatise on the nature of failure; how failure is evaluated; how failure is attributed to proximate cause; and the resulting new understanding of patient safety.
  • Normalization of deviance - Explore how the factors accounting for disasters accumulates unnoticed until it's too late. This has been studied on other fields, but not in software engineering.
  • Steve Jobs explains - Why companies fail? - On how sales and marketing takes over product focused companies.
  • The failure of Scaling Etsy - When a company lacks technical leadership: developers waste time in costly refactors, over-engineered systems, and ends up detached from the business and product.

Exits

  • Why I Rejected My Manager - I understand now why the saying is: people leave managers, not companies..
  • Colleague is leaving. How to investigate what went wrong? - Most of the time people leave bosses, not the job or the company. And why you're unlikely to get any substantial insights from exit interviews. (source)
  • “People do get pissed off in clusters” is the best description of a team/company meltdown that I've ever seen. (source)
  • Something I've seen multiple times is that, when a VP leaves, a company will become a substantially worse place to work, and it will slowly dawn on people that the VP was doing an amazing job at supporting not only their direct reports, but making sure that everyone under them was having a good time. (source)
  • Next time your favorite manager and tech lead quit the company, ask them why. (source).
  • How to discipline overeager engineer - Over-achieving talent is looking for a management promotion. Management does not recognize effort. Engineer become disgruntled and management is looking to discipline him. A case-study of a bad situation in which both side shows clumsiness.
You can’t perform that action at this time.