Build a Team that Ships
startupboy.com
startupboy.com
Apple: "Bad advice. Let a "Jon Ive" type design-lead think through the product and detail every page of it. Don't let engineers run product. Give them the ability to give feedback on product, but give the ultimate authority to somebody who understands human emotion, art, UX, etc"
Google pre-Page: "Good advice. Engineers should control product. They are smarter than everybody else, and therefore will make the best software."
The reality of these company's positions is more nuanced than this, but these caricatures have their place in helping to understand how they think.
No tasks longer than one week. You have to ship
something into live production every week – worst
case, two weeks.
Does this actually work? What I mean is, no matter how much you break down a task, aren't certain sub-tasks going to take more time than this? It’s not perfect. We ship too many features, many half-baked.
The product is complex, with many blind alleys.
It sounds like his team is more focused on just getting something out and improving it iteratively than it is on producing a polished product that is architected beautifully.This is a great approach. It's also not always appropriate for everyone.
The other devs will be happy someone improved the code. Like the guy said, it's better they ship what they want than not ship what you want
Brilliant IMO
You have to ship something into live production every
week – worst case, two weeks.
In your experience, have the smaller pieces always been in a state that can be pushed to production every week? If not, how was that handled?I've had a few tasks like this that we just ended up scrapping, even after several weeks of work, because we found we didn't need the monstrosity of a feature as much as we thought we did.
1) Product people that have shipped code themselves in the past and can provide enough detail for an engineer to run with.
2) Fullstack Engineers that are empowered to fill in the gaps in business analysis, process flow, and UX on the fly using their gut. They also need to have a good eye for design and shouldn't have to ask a designer to help for everything.
3) Solid instrumentation to rollout, measure, and rollback features on a live system in way which limits user impact.
4) Bulletproof trust on the team and a culture that supports being able to make mistakes and learn from them.
Isn't it better to take an extra week to polish a feature than to just "ship it" and then patch it later? At a certain point as your organization grows and your product becomes more mature shouldn't your focus shift from quantity of features released to actually shipping quality releases?
I know there is a balance here. Don't be so worried about polish that you don't ship anything but don't be so blinded by speed that you ship everything within a week. You just can't make blanket rules like this.
Totally agree here. Best teams I work in were the small and focused ones!
I can't really see why small companies with high revenue/traction are portrayed as "risky/volatile" because they have 5-15 employees.
To some extent, the same is with single-founders. Why "dismiss" a 1-man team if he did the work of 2-3 people?
PS: I know the motivations for both, but there is a distinction between possibility and likelihood of a risk to actually occur.
But consider who wrote those libraries. They took longer than a week. They are not just a basket of features, they may be a large architectural puzzle.
The point is, the author's advice may work for a web page, and there are a lot of startups that just make a web page these days, so sure.
http://www.businessinsider.com/growth-hackers-are-the-new-ma...