On my product engineering teams, I under-specify product requirements by design. That is, the work that engineers are asked to do is always left a little ambiguous. I used to have a very naive view of how militaries made decisions. You had a formal chain-of-command, and detailed instructions were passed down that chain and implemented,Continue reading “Mission Tactics: When Under-Specifying is Good”
Author Archives: somehowmanage
Good Architecture: Data Model vs. Data Flow
Most architectural mistakes I’ve seen in software stem from a mistake either in the domain model or the data flow. Understanding what each of those two things is, how to do them both well, and how to balance the tensions between them is an essential skill every developer should invest in. Let’s use an exampleContinue reading “Good Architecture: Data Model vs. Data Flow”
4 Hiring Myths Common in HackerNews Discussions
Another day, another HackerNews discussion about hiring being broken. The most recent one I saw was triggered by a blog post by the formidable Aline Lerner (disclaimer: Aline is a friend and we collaborated on a hiring book last year). Now, I 100% agree that hiring is broken, and Aline’s post is really thoughtful. InContinue reading “4 Hiring Myths Common in HackerNews Discussions”
The Shape of Technical Debt
The term technical debt is so common that you’d be hard-pressed to find anyone in the software world that hasn’t heard of it. But what is technical debt? There are a few frameworks out there, so I’ll list them quickly, but then I’d like to present one I’ve found especially useful with the teams IContinue reading “The Shape of Technical Debt”
Hire people you believe in—believe in the people you hire
I was reading an amazing Twitter thread about Bill Grundfest, founder of The Comedy Cellar and the guy who discovered some of the most famous comedians. In the thread, which includes stories of Jon Stewart, Bill Maher, and Ray Romano, the pattern is essentially: Bill is able to detect talent, even early on in people’sContinue reading “Hire people you believe in—believe in the people you hire”
Code is a liability, not an asset
I loved this quote from the book Software Engineering at Google. Found it a helpful reminder. Earlier we made the assertion that “code is a liability, not an asset.” If that is true, why have we spent most of this book discussing the most efficient way to build software systems that can live for decades?Continue reading “Code is a liability, not an asset”
How I Started Writing More
Of all the advice I’ve gotten in my career, the one I wish I’d gotten (and heeded) earlier was to just write more. Up until two years ago, I had barely written much at all. In the past two years, I went from writing short answers on Quora, to writing several articles featured on theContinue reading “How I Started Writing More”
Push vs. Pull-based Urgency
I was talking to my friend Josh a couple weeks ago about the speed at which teams move and how best managers can create a sense of urgency. We pretty quickly agreed that there are two types of urgency for a team: push-based and pull-based. I felt like this is an important delineation, and wantedContinue reading “Push vs. Pull-based Urgency”
Is Revenue Model More Important than Culture?
HN Discussion Here: https://news.ycombinator.com/item?id=24543510 I always loved getting problems of the type “What is the limit as x approaches infinity” type in high-school/college. You’re given an equation (of the classic y=x format), and asked to derive what the value of y will be as x grows to infinity. One thing you learn pretty quickly aboutContinue reading “Is Revenue Model More Important than Culture?”
Disrespectful Design—Users aren’t stupid or lazy
This post made it to the top of Hacker News, sparking some great debate. See the discussion here. It’s a common narrative in tech to design products with the assumption that users are stupid and lazy. I think that is both disrespectful and wrong. The idea is rooted in a lot of research around productContinue reading “Disrespectful Design—Users aren’t stupid or lazy”