Created
August 11, 2022 13:44
-
-
Save semarj/3104a9377485177d866b0208c6c09fae to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
You can't know how the company looks from any other seat than your own. | |
Practice with people in other seats to communicate and manage well. | |
Clarify the problems your team needs to tackle. Stay all the way away from | |
specifying the solutions. That's their job, not yours. | |
"My team wants to work on x because it is more fun for them, is that okay?" No. | |
Never. "Winning is fun." Go win. | |
Repetition feels silly but works wonders. Start each conversation repeating | |
the overall goal and connecting it to the discussion. | |
You have to be your team's best ally and biggest challenger. You can't be a | |
great leader by care-taking alone. Push for their best work. | |
Trust is the currency of good management. You cannot be a great manager if the | |
people with whom you work do not trust you. | |
Just tell them already. One of the best things you can do as a manager is be | |
completely blunt about what you see. Tell them now. Don't dance around negative feedback. | |
Attract, nurture, coach, and retain talent. Talk to engineers to tease out | |
concerns early, then fix them if you can. | |
Communicate to every engineer the next most important issue for them to work | |
on. | |
Be the tiebreaker when the development team can't reach consensus. | |
Be the information hub. Know what every engineer is working on, and help | |
connect the dots that wouldn't otherwise get connected. | |
Provide administrative support. Schedule issues, coordinate releases, and make | |
sure the bureaucratic machine keeps ticking. | |
Enforce behavioral and performance standards. Fire bullies and underperformers. | |
Don't personally fix bugs and ship features. You have to write code to remain an | |
effective tiebreaker, but that's where your coding responsibilities end. | |
Don't supervise the quality and volume of people's work. Software engineering isn't | |
an assembly line. If you find yourself supervising too often, you haven't | |
attracted the right people or given them the right incentives. | |
You're the one who makes hiring and firing decisions. Everything that happens | |
on your team is your responsibility. | |
Engineering is a seller's market: people work for you because they believe in | |
you. Access to their talent is a privilege. | |
Authority isn't bestowed freely. It's earned by making good decisions over | |
time. | |
Don't make decisions unless you have to. Whenever possible, allow the team to | |
explore ideas and make decisions on its own. | |
Do make decisions when it's necessary. Few things are as demoralizing as a | |
stalled team. | |
Don't shoot down ideas until it's necessary. Create an environment where | |
everyone feels safe to share and explore ideas. The folks writing the code have | |
a lot of information you don't. Rely on your team and you'll make better | |
decisions. | |
Building intuition on how to make good decisions and cultivating a great | |
relationship with your team will get you 95% of the way there. The plethora of | |
conceptual frameworks for organizing engineering teams won't make much | |
difference. They make good managers slightly better and bad managers slightly | |
worse. | |
Management happens to be prestigious in our culture, but it's a skill like any | |
other. Prestige is a distraction — it's fickle and arbitrary. Guard against | |
believing you're any better than anyone else. The sooner you get over prestige, | |
the sooner you can focus on doing your job well. | |
Management also attracts scorn. Ignore it — the people who believe managers are | |
useless don't understand the dynamics of building a winning human organization. | |
If you feel something's wrong, you're probably right. Don't let anyone bully | |
you into ignoring your feelings. | |
If you find yourself blaming someone, you're probably wrong. Nobody wakes up | |
and tries to do a bad job. 95% of the time you can resolve your feelings by | |
just talking to people. | |
Most people won't easily share their emotions. Have frequent informal | |
conversations, and tease out everything that might be wrong. Then fix it if you | |
can. | |
Your team looks to you for leadership. Have the courage to say what everyone | |
knows to be true but isn't saying. | |
You're paid to discover and fix cultural problems your team may not be aware | |
of. Have the courage to say what everyone should know but doesn't. | |
Hire great people, then trust them completely. Evaluate performance on monthly | |
or quarterly basis, then fire if you have to. Don't evaluate people daily, it | |
will drive everyone (including you) insane. | |
Most intellectual arguments have strong emotional undercurrents. You'll be | |
dramatically more efficient once you learn to figure out what those are. | |
Have difficult conversations as soon as possible. Waiting will only make a bad | |
situation worse. | |
Never assume or jump to conclusions. Never demonize people in your mind. Never | |
blame, yell or vilify. | |
Use non-violent communication — it's the best method I know of to critique | |
people's behavior without offending them. It smells like a management fad, but | |
it really works (I promise). | |
Have the courage to state how you feel and what you need. People are drawn to | |
each other's vulnerability but repelled by their own. Vulnerability isn't | |
weakness. | |
Expect people to extend you the same courtesy. If someone makes you feel bad | |
for stating your needs and feelings, it tells you more about them than about | |
yourself. | |
People will push and prod to discover your boundaries. Knowing when to stand | |
back and when to stand firm is half the battle. | |
Occasionally someone will push too far. When they do, you have to show a rough | |
edge or you'll lose authority with your team. | |
A firm "I'm not ok with that" is usually enough. | |
Don't laugh things off if you don't feel like laughing them off. Have the | |
courage to show your true emotions. | |
If you have to firmly say "I'm not ok with that" too many times to the same | |
person, it's your job to fire them. | |
Unless you're a sociopath, firing people is so hard you'll invent excuses not | |
to do it. If you're consistently wondering if someone's a good fit for too | |
long, have the courage to do what you know is right. | |
Don't let people pressure you into decisions you don't believe in. They'll hold | |
you responsible for them later, and they'll be right. Decisions are your | |
responsibility. | |
Believe in yourself. You can't lead a cavalry charge if you think you look | |
funny on a horse. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment