Newsletter #30: Reducing Friction, Staying Technical as a CTO, and More.
Welcome to the 30th edition of Software Leads–a monthly newsletter on software engineering and leadership.
Welcome to the 30th edition of Software Leads, a monthly newsletter about software engineering and leadership. It aggregates articles from technical leaders on difficulties, tips, and practices for building and managing successful software teams.
Below, you’ll find my top reads for the month of August.
Water runs downhill. People always do the thing that's easiest to do. Your goal as a manager, therefore, is to make the right thing to do the easiest thing to do. If people are regularly doing any end-run around a process to get work done (say, regularly asking for rubber-stamp PRs so they can be unblocked), you have a process that's not earning back its energy cost. Fix it.
This was probably my best read last month. If you're leading a software team, you should read this.
Managers, take your 1:1s to the next level with these six must-reads
1:1s allow managers to maintain a pulse on how their direct reports are doing and make sure their career ambitions for the years ahead connect back to their more immediate days and weeks. This post has a wealth of insights on how to make 1:1s impactful.
Figure out which category your 1:1 falls into. The update, the vent or the disaster category.
A manager's job is not to dole out advice but to empower reports to figure out the answer themselves. So identify what matters to reports, understand the problem, and support.
When you see symptoms, dig deeper to understand the root cause to have a shot at fixing it.
Check your empathy before discussing performance.
Keep tabs and take (specific) notes in your 1:1s throughout the year.
Strategy for leading understaffed teams
You may find yourself in charge of an understaffed team for various reasons, including resignations, sick days, holidays, reorganizations, and more. You need a plan in situations like this to stabilize the team and achieve your business goals. This post shares a strategy for managing or leading a team with reduced capacity.
"Many new hiring managers only look for "can this person do the job?" ("can this person code")? That's a big miss and can lead to conflict, misalignment, unhealthy competition, and more. A team is only as good as the sum of its parts, which includes having complementary skill sets. If you have a duplication of strengths, interests, and skill sets, each duplication has diminishing returns. …It helps in the "bus factor", but it leads to groupthink, competing interests, lack of opportunities per person, and missing skill sets on the team."
In my previous newsletter, I included a link to a post that talks about ownership exercise to do with people you work with to improve how you work with them. People who work well together have a shared understanding of each person's roles. This article from the Segment engineering blog dug deeper into this topic, focusing on EM and PM working relationships. It presents a framework that EMs and PMs may use to create a productive working relationship or troubleshoot specific issues with responsibility and ownership.
The SPACE of developer productivity
There have been many attempts to measure developers' productivity, and there are also tons of opinions on how it may or may not be measured. But one thing is sure: developers' productivity cannot be reduced to a single metric. I enjoyed reading the post and the outcomes of their research last month.
Organize a first performance review for your engineering team
If you work for a startup and don't yet have a clear process for performance review, this piece offers some advice on where to begin. The author provides tips for making your first performance review successful and transparent. In addition, the post contains some ready Google Sheets templates you can leverage in your performance review.
Six tips for staying technical as a CTO
Check out Shopify's CTO's advice on staying technical as a CTO in this post if you're on the leadership track and want to keep your technical skills up to date.
Be a voracious reader
Code as a hobby
Participate in hackathons
Create a team of tech advisors
Clear out bugs and backlog
James Samuel (he/him)
Illustration by Anna A from Ouch!