Why do some projects ship and others seem to drag on forever? You need 3 people to get this right.
Let me know if this sounds familiar:
A stakeholder asks for a new feature. They have a vision and grand ideas and this would be nice and that would be nice and oh it would be great if it could do this other thing too. That will enable them to hit all their objectives and LINE GO UP 🤩
You start building. And building. And building some more. Every two weeks the vision changes. The ideas get bigger. The needs greater. Oh wow if the feature could also do this thing I thought of while brushing my teeth that would be fantastic, nevermind the thing I asked for last week. This, this, is the thing we really need.
For weeks nothing ships. You keep writing code and it keeps turning into shit. With each change of their vision, you scramble to adapt. Your code become rickety, falling apart, leaning like a skyscraper on marsh. The worst work of your life.
Eventually the project gets scrapped. Or you ship a pile of crap nobody loves. Ugh our engineers are so useless, can't get anything done 🙄
Be honest. Sound familiar?
1. Know what you want
Asking for the smallest feature that fits your needs is a competitive advantage as a stakeholder.
— Swizec Teller (@Swizec) October 22, 2024
A stakeholder who gets crystal clear about what they need and asks for the smallest shippable version of an idea, is a stakeholder who can get shit done. The more shit they get done, the more line go up.
This matters for two reasons:
- Stakeholders are accountable
- Resources are limited
Stakeholder incentives are designed to create skin in the game. Either as business owners whose sweat and tears are tied to the company or as executives whose bonuses and promotions are all stock. In theory a VP is always on a PIP.
You're responsible for getting it done, but they're accountable. That means if line don't go up, the VP gets fired. Or loses their business.
And you're the limited resource. Well, engineering/product as a whole. There are 12 weeks in a quarter and lots of stakeholders who want their features shipped. Who's gonna get theirs faster: The person with a clear crisp ask or the person changing their mind every week?
2. Push back on nice-to-haves
Being able to say "I think you're hungry here's a ham sandwich" is a competitive advantage as an engineer.
— Swizec Teller (@Swizec) October 22, 2024
Your job is to push back on nice-to-haves. Focus on getting us over the water, not just building a bridge because someone asked for a bridge.
For this you need a strong product partner who can do the pushing back for you. A product manager's job is to ~~whip stakeholders into shape~~ help stakeholders figure out their needs. A strong lead engineer can help here too.
You want someone in your corner who goes "Okay that's great and I love your vision, but what do you need right now? We can't spend 12 weeks on this. How can we unblock you in 2 weeks max?"
If the stakeholder is hungry and asking for caviar, a ham sandwich will do just fine.
3. Empower engineers to have this conversation
Empowering this interaction is a competitive advantage as a business.
— Swizec Teller (@Swizec) October 22, 2024
Engineering/product should be having these tradeoff discussions with stakeholders ALL THE TIME. A business that empowers this interaction wins.
I've seen so many startups begin to fail when leadership starts coming up with ideas behind closed doors and treating engineering/product as the execution blackbox down the line. You gotta involve engineers and product as early as possible.
Empowered teams, not widget factories. That way all your best brains can work on solving business problems together. You'll move faster, get more done, and LINE GO UP 🤩
Plus if an idea doesn't work, wouldn't you rather know in 2 weeks than 12?
Cheers,
~Swizec
PS: this is the stakeholder management version of solve the problem, not a different more difficult problem
Continue reading about "Yes caviar is great, here's a ham sandwich"
Semantically similar articles hand-picked by GPT-4
- A better roadmap solves many issues
- Why great engineers hack The Process
- Get us over the water, not build us a bridge
- You can't side-quest a product
- The mistake that strangles engineering teams
Become a *true* Senior Engineer
Get promoted, earn a bigger salary, work for top companies
Getting that senior title is easy. Just stick around. Being a true senior takes a new way of thinking. Do you have it?
The Senior Minset email crash course
Get a free chapter from the Senior Engineer Mindset book and a sample audiobook chapter, followed by a Senior Mindset 101 email course.
You'll get insights to apply at your work right away.
Have a burning question that you think I can answer? Hit me up on twitter and I'll do my best.
Who am I and who do I help? I'm Swizec Teller and I turn coders into engineers with "Raw and honest from the heart!" writing. No bullshit. Real insights into the career and skills of a modern software engineer.
Want to become a true senior engineer? Take ownership, have autonomy, and be a force multiplier on your team. The Senior Engineer Mindset ebook can help 👉 swizec.com/senior-mindset. These are the shifts in mindset that unlocked my career.
Curious about Serverless and the modern backend? Check out Serverless Handbook, for frontend engineers 👉 ServerlessHandbook.dev
Want to Stop copy pasting D3 examples and create data visualizations of your own? Learn how to build scalable dataviz React components your whole team can understand with React for Data Visualization
Want to get my best emails on JavaScript, React, Serverless, Fullstack Web, or Indie Hacking? Check out swizec.com/collections
Did someone amazing share this letter with you? Wonderful! You can sign up for my weekly letters for software engineers on their path to greatness, here: swizec.com/blog
Want to brush up on your modern JavaScript syntax? Check out my interactive cheatsheet: es6cheatsheet.com
By the way, just in case no one has told you it yet today: I love and appreciate you for who you are ❤️