The Facebook alumna, author and co-founder of Honeycomb (and classical pianist) hardly needs an introduction. What Charity Majors doesn’t know about delivery, isn’t worth knowing. So we sat down with the operations and database engineer to hear her thoughts on distributed teams and how the tech industry is recovering.
Hi Charity! Thank you for joining us today. What’s your focus for the rest of 2021?
Hi! I’m making some really big bets in design and trying to develop tools that are consumer quality, because I feel like these have been lacking in our tool space for some time.
Sounds great! Given everything that has happened globally with Covid-19 and the subsequent changes in management strategies, how do you think your leadership will have to shift again with 2021 being the year of recovery rather than damage limitation?
We had already made the decision and started the process of being completely distributed before Covid hit, so it was a pretty smooth bypass for us. This past year has really been about understanding how differently it affects different people and how much you have to very explicitly and very loudly support your team in their human individualities. More than anything, I think it really drives home the importance of the ‘team’. Individuals have wobbles, and a lot of people wobbled really hard over the last year, but when you smooth that over with the individual, the team can continue to perform at a very high level.
Moving forward into the rest of 2021, I think it will be a year of recovery. But I do hope that we can take the lessons we’ve learned about how to prioritise mental health and how to not assume that everyone is in the same situation We also need to make space for a lot of variants and make people feel unashamed to be experiencing such wobbles and able to bring their whole selves into work. We need to make that stick as an industry.
Totally! And what possibly motivated people before might be different from what motivates them now or how they respond to being motivated. With that in mind, how have you managed to keep your team going so that delivery doesn’t suffer?
A lot of this comes down to ‘good pressure’ versus ‘bad pressure’. It’s Maslow’s Hierarchy of Needs: First, people need to have their needs met as people and as part of a family, before they can expect to do any good work. That’s just a given. But once you’ve made allowances for that and been supportive of that, you have to recognise that a lot of people come with a lot of work-related baggage/damage because they have been pressurised in ‘bad’ ways in the past.
I think engineers crave good pressure; they crave structure and knowing that there is meaning within their work and so the solution to the problem isn’t to remove all pressure. It’s for leaders to hold their teams to a high standard and set the bar, if you don’t, they have nothing to set themselves against.
The real secret to having high-performing teams is just constant engagement; deep engagement with the work that you’re doing and shipping a lot of stuff really quickly and having a big impact on a user. When things take longer than they need to, you need to have a discussion with your team about it and find out why and what the tradeoffs are. If your engineers are not connected to the ‘why’ of something, they’re never going to be motivated.
As you scale and projects get bigger, how do you maintain that motivation and create alignment between teams? Especially when people and teams are co-located more than ever?
Engineering Managers (EMs) are really key to this because it’s their one job. An engineer’s job is to do great work, but EM’s need to make sure that everyone knows ‘why’ and is dialled into that. I wrote an article last month about whether or not Engineering Managers need to be very technical/former engineers. Although I am aware that a lot of other configurations work and can work, I feel very strongly that they need to be former engineers because they need to be that intricately involved in everyday decisions of why are we doing this? Why are we making these trade-offs? So they can convey it to others.
How do you scale delivery and planning as a team grows?
Continuous deployment is really the key to a lot of things. So many teams talk a big game about CI/CD but they’re not actually doing continuous deployment, they’re doing continuous delivery which is a bad move; a cop-out if you will.
The interval of time between when a person writes some code and when that code is in production, in my opinion, needs to be minutes long and it needs to be automatic. . You can’t waiver on that because making it muscle memory. When people write code they should wait a few minutes before looking at it (through a lens of implementation) and then verify what they meant to do is what is actually happening. It’s an irreducible building block of building great teams and great software because it validates intentions in the moment and something you do without thinking.
You can’t build a great team or product on a cycle that is days long or hours long. This is something that can be very difficult to roll out when you didn’t start out this way, but when you start a new project and have continuous deployment from the beginning it’s very easy to stay that way and I would encourage more teams to do that
What’s your top tip for planning and delivering projects
Get your code live and into production within 15 minutes after your merge. You should be able to do this if you use feature flags and other best practices.
Finally, what literature would you recommend to other Delivery Managers?
For engineering managers, everyone should read The Four Tendencies by Gretchin Rubin – it really gets to the heart of individual people’s motivations. YOu can’t just assume that what motivates you also motivates others on your team. Some people like structure, some people reject it, so it’s a really great book.
Plus there’s an article by Martin Fowler on Continuous Delivery which explains even better than I have, about why it’s so important.
Thank you, Charity!
Catch Charity and some incredible other speakers at our forthcoming CTO Craft Con 2021: The Delivery One on 23 – 25 March.
Find out more and get your tickets here!
If you or your CTO / technology lead would benefit from any of the services offered by the CTO Craft community, use the Contact Us button at the top or email us here and we’ll be in touch!
Subscribe to Tech Manager Weekly for a free weekly dose of tech culture, hiring, development, process and more.