How to Create a Great Engineering Culture ✨
A thorough guide about what great culture looks like, and how to make it happen.
We hear that all the time: we have to create a great engineering culture for our team.
This statement always sounds smart, but it doesn’t mean much. Anything you do is about culture — which makes culture one of those intangibles that is easier to acknowledge ex-post (”look! *That* is great culture”) rather than address it upfront.
I get many questions about this from readers, which are usually variations of three big ones:
What is culture, really?
What does great culture look like?
How do you make culture happen?
I wrote several articles about this in the past, which today I am consolidating into a full, longer guide, to answer exactly these questions.
I write one of such Guides every month — this will be the December one. Guides are longer, more in-depth and more researched articles than usual, that act as primers on a given topic.
This guide is peculiar because I want it to be extremely practical. Most things you can find online about culture are fluffy: they may be inspirational, but not very actionable.
Instead, I want you to leave this article thinking: “ok, now I can do this and that”. This is always the goal of Refactoring pieces: give you practical ideas to apply on your team, backed by solid first principles.
So, here is our agenda today:
📖 What is Culture? — A quick intro to get on the same page with definitions.
4️⃣ The Four Pillars — The four elements you need to get right in modern engineering teams:
🏅 Ownership — driving impact and autonomy with broad responsibilities.
💬 Communication — optimizing for crafters and getting remote right.
✨ Simplicity — writing code like a toddler.
🏎️ Speed — shipping fast and often.
🏗️ How to Build Culture — Once you know how you want your team to behave, how do you make it happen?
Let’s dive in!
📖 What is Culture?
There exist plenty of inspirational, quotable answers to this question, like: culture is the behavior you reward, or, as a leader, culture is the example you give through your actions, and more.
There will never be a perfect answer and, frankly, it doesn’t matter, because I don’t find the question particularly useful.
Instead of nitpicking on what culture is and is not, let’s agree on a simple mental model where, in any team, there is work and meta-work:
Work — is the stuff you need to accomplish.
Meta-work — is how you do work: processes, procedures, principles, etc.
Culture is about meta-work.
Meta-work matters because sure, every team has their own way of doing things and that's great. But there exist a handful of key principles and strategies which we are starting to agree on, and which today are in the arsenal of most of the teams who are really nailing it.
In three years, by writing this newsletter, I have talked with countless tech leaders and read hundreds of articles and case studies about how engineering teams work. My opinionated take is that, whenever you look at a great team, one of those that always seem to fire from all cylinders, shipping valuable stuff everyday multiple times a day, they are very likely nailing four things:
Ownership and communication are about working together, while simplicity and speed are about your technical strategy. Let’s look at each of these items.