My User Manual: How I Work and Lead
How I work with anyone I report to, work with or lead. I test ideas early, size each risk to the evidence and put people first. When a risk needs taking I take it, and my team keeps the wins.
This is my user manual: how I work, for anyone I report to, work with or lead.
I’m an engineer first, and I first led a team in 2014. With people, compassion comes before everything else. With the work, I like to ship early, measure what happened and use that to decide what comes next.
Why I keep a user manual
My brain works differently from most people’s, and it shapes how I work, so I wrote down what that means for the people around me. It shows up throughout this page.
I update this user manual when I learn something new about how I work.
How I work
I share what I know. I helped set the direction of Deepgram’s open source programme, looked after its packages and started its developer community on Discord and GitHub Discussions. We reached millions of developers and grew that community to tens of thousands. Teams get the same from me: what I’ve learned and what I’m bad at, which is why this page is public. I’m quick to listen too, especially to someone who sees it differently.
I build to find out. My head gives me a constant supply of ideas and very little patience for sitting on them, so I turn them into working prototypes fast. A small test that answers the question this week is worth more to me than a long debate about what it might say. It’s probably why I’ve thrived in the age of AI engineering. Finally, my output can keep up with my brain.
I size the risk to what I know. Give me data or real context and I’ll make a big call. Without either, I’m careful. What I’ve lived through left me always scanning for what could go wrong, and it means I often see a risk before anyone else in the room has mentioned it. I don’t let that decide for me. I check it against the evidence, and where there is no evidence, I run something small to get some before anything big depends on it.
I move early on purpose. Getting there before your competitors is worth a lot when a market is changing quickly. At Auth0 my job was to watch new technology trends, learn them fast and publish while they were still new. I still work that way, and I’m always asking what we could get to first.
I don’t settle. Being ahead is when I start asking what could be faster or simpler, and I don’t stop asking. A system that works still gets the same questions from me as one that doesn’t. At Onhotels our slowest searches did work. I designed a new architecture that made them 95% faster.
If we can test it, I test it. Agree what we’ll measure, run the experiment, then read the number.
I have strong opinions, loosely held. Where a test can’t settle something, I’ll argue for mine with real conviction, and people can mistake that for a closed mind. A good counter-argument or a bad result will change it. My values are the exception.
I build for the person on the other end. An SDK that’s painful to use has failed, so at Deepgram I re-architected ours to match the product and make it better to use. Colleagues get the same thought. I care how my work lands on people, and the empathy I get from what I’ve lived through is something I use every day.
I stay with what I ship. I worked on and looked after Deepgram’s open source packages for more than four years, not only the first release. People should be able to count on me, so I plan around the places I know I drop things: a written recap after a meeting, a morning check-in before a deadline.
Being blocked gets my ideas going. At Deepgram I built our first CLI, which let customers pick a use case and a language and set up a working demo with one command.
I get calmer when things break. In a crisis I can take in a lot of information, pick out what matters, make a plan and act on it.
When I’m on your team
Give me the problem and the outcome you want. I’ll work out the how, tell you what I find, and keep the work moving. The only thing you may need to chase is a reply. I go looking for things that can be fixed or decided, even when they aren’t strictly mine.
I do my best work between nothing and the first working version: new products, proofs of concept, tricky problems nobody has solved yet. When a problem has my interest, I focus so hard that I’ll produce a lot of work in very little time, and I still care about code quality as I go. Put me on your hardest and least defined problems. I’ll stay on them past the first version, and I’ll bring in people who love the last 10% when that gets a better result, while staying responsible for it.
If my output drops, I’ll say so, and you can always ask me about it. Usually the work has stopped being interesting, and we can find the hard problem in it or agree a proper handover. I won’t just drop it.
Ask for my input on everything. I’ll say what I think even when it’s not what you were hoping to hear, and I’ll say what I’m good and bad at just as openly. I’ll also expect a say in decisions that directly affect me or my team, because those decisions tend to be better with the people closest to the work in the room.
Once a decision is made, I disagree and commit. I’ll argue my case hard before the call, and if it goes the other way, I put my full effort behind it as if it had been my idea. From then on the commitment is mine, including when it goes wrong, and I won’t leave someone else to clear up the mess. The same goes when I’m the one pushing ahead and others have doubts: I own the result, and if it doesn’t work, we fail fast and try something else.
A few things get the most out of me:
- Long blocks of uninterrupted time. I will block out focus time, some strict and some flexible, to get the best balance for everyone.
- As little process and admin as the work allows.
- For a hard deadline, a short check-in first thing each morning.
When you’re on my team
Compassion comes first, and that doesn’t mean the work stops. In business, it means we deliver and we bring people along with us. You’re a person before you’re a member of my team, and I’ll treat you that way in good weeks and bad ones. Numbers are for testing ideas, not for judging you. I look at effort first, because I know what it is to try hard every day for a week and still have little to show for it. One bad week won’t change what I think of you.
My first job is to make sure you have the tools and the context to get moving, and that you always know what matters most right now and why. If you’re stuck because you’re missing something, fixing that is on me. After that, the goal is shared and how you get there is your call. I don’t micromanage.
I care about where you want to go, not only what you ship this quarter. Tell me what you want to get better at and I’ll help you find the work that gets you there. I’ve managed principal and senior engineers alongside new hires, coached people at Deepgram while re-architecting the SDKs, and I still write code, so I can help with the craft as well as the career.
You know things I don’t. I want your input and your experience before I make a decision that affects you, and I’ll use them. When you have something to say, I’ll make it louder: I’ll get it in front of the people who need to hear it, with your name on it.
You can try things on my team. If you have an idea, let’s agree how we’d know it worked and go and test it. When a risk needs taking, I’m the one who takes it. If it goes wrong, the loss is mine. If it goes right, the win is yours, and I’ll make sure people know it.
I also won’t surprise you. Sudden change costs people more than most leaders realise, so you’ll hear about changes from me as early as I can tell you. I’ll be direct with you too, and my feedback will always be something you can act on. I’m protective of the people I work with, and I judge people by how they treat those with less power than them, not more.
How to talk to me
- Skip the formalities and just ask your question. Message me any time, though I may reply later because of time zones.
- I can be blunt. It can read as frustration or anger, and it’s neither. If it lands badly, tell me.
- Disagree with me out loud. I enjoy a proper debate. I don’t enjoy long arguments about tiny things.
- Give me feedback I can do something with. I want it.
- If plans change, send me a quick DM.
- After a meeting, send me what we agreed and what I need to do. I love this.
- Write to me yourself. I use AI every day, and I still hate having LLM output pasted at me.
My blind spots
I know these well and I plan around them. If one still gets through, a quick nudge fixes it.
- Admin. If a task isn’t interesting, I struggle to get to it. That same drive is what makes me fast on everything else, so keep admin small or give me a clear reminder.
- Things I can’t see. If something is out of sight, it can drop out of my mind. If I haven’t replied, I’ve probably forgotten, not ignored you. Nudge me.
- Time. I don’t always feel time passing. If I’m five minutes late, send me a DM. I’ll always respect it.
What I don’t have patience for
- Bigotry of any kind. I won’t stand for it.
- Deceit, and people who say one thing to your face and another behind your back.
- People who don’t think about what their actions do to others. I have a strong sense of justice, and I struggle to let that go, especially when it lands on my team.
- Decisions handed down without input from the people they affect.
- Micromanaging.
Where I stand
I’ve served in both the military and the police. I was an Army reservist, working as a signaller until 2011, then spent over eight years as a police reservist with Essex Police, doing several full shifts a month alongside regular officers, first on frontline response and then on a county-wide team doing proactive and drug enforcement work. That, and other things I’ve lived through, shaped what I believe, and I try not to hold people to account for things I know nothing about. These days, I try to stay away from projects directly supporting the military or law enforcement. Where I can’t, I say what I think about it.
My politics and my thoughts are all over this blog and the web. I think a lot about how to put them across, and they’re probably best said in the words of Elie Wiesel, whose work a good friend once introduced me to. Wiesel was a Holocaust survivor, a Nobel Peace Prize laureate, a professor and an author, whose work was about memory, moral responsibility, the risk of forgetting the past and the danger of staying passive when people suffer.
“There may be times when we are powerless to prevent injustice, but there must never be a time when we fail to protest.” (Nobel lecture, 1986)
“No human race is superior; no religious faith is inferior. All collective judgments are wrong. Only racists make them.”
Born in the late 1980s
I was born in the late 1980s, and that time forged me: compassionate, anti-racist, socialist and caring, and I won’t be moved on any of it. My generation watched what people had built for each other get sold off and cut back, then started work just as the economy crashed. Growing up with that showed me what it costs when a country stops looking after people, so I look after the people around me.