More on this book
Community
Kindle Notes & Highlights
1-1s serve two purposes. First, they create human connection between you and your manager.
One of the early lessons in leadership, whether it is via direct management or indirect influence, is that people are not good at saying precisely what they mean in a way that others can exactly understand.
My job as tech lead was to continue to write code, but with the added responsibilities of representing the group to management, vetting our plans for feature delivery, and dealing with a lot of the details of the project management process.
the biggest trick of being a good tech lead: the willingness to step away from the code and figure out how to balance your technical commitments with the work the whole team needs.
In a healthy organization, there is no shame or harm in raising issues early.
in the process of being a tech lead, you have to act as a software developer, a systems architect, a business analyst, and a team leader who knows when to do something single-handedly, and when to delegate the work to others.
The tech lead has a much wider scope of responsibility than the senior engineer in an individual contributor position.
most new hires act in self-interest until they get to know their colleagues, and then they move into group interest.
teaching our teams how to hone their instincts about complexity and opportunity is a worthy goal.
it’s hard to get people to commit a year in advance to the work that will be done for the next year.
Be realistic about the likelihood of changing plans
Think about how to break down big projects into a series of smaller deliverables so that you can achieve some of the results, even if you don’t necessarily complete the grand vision.
If the project is important, get it scheduled now — or as close to now as possible.
Dedicate 20% of your team’s schedule to “sustaining engineering.”
Understand how important various engineering projects really are.
How big is that project? How important is it? Can you articulate the value of that project to anyone who asks? What would successful completion of the project mean for the team?
The company looks to you for guidance on what to do, where to go, how to act, how to think, and what to value.
You’re capable of making hard decisions without perfect information and willing to face the consequences of those decisions.
You can play politics in a productive way, in order to move the organization and the business forward.
Cassandra Costley liked this
You understand how to disagree with a decision and commit to deliver on it even though you disagree.
Saying something is top priority is one thing, but making the actual tradeoffs on the schedule to get people moving on it is completely different.
most people need to hear something at least three times before it really sinks in.
Don’t hide information behind jargon, and be careful with details.
We don’t set up systems because structure and process have inherent value. We do it because we want to learn from our successes and our mistakes, and to share those successes and encode the lessons we learn from failures in a transparent way.
Culture is how things get done, without people having to think about it.
One way to think about engineering processes is that they serve as a proxy for how hard or rare it needs to be for something to happen.
Getting good at working through conflict means getting good at taking your ego out of the conversation.