Peopleware suggests that managers should set realistic schedules and should not put overreaching pressures on developers. In an early startup with hired developers, how does one keep the competitive edge with a very fast paced culture without burning out the developers? I've heard stories that people at startups work tirelessly without breaks, but won't that cause burnout eventually? How does one strike the right balance?
A lot of managers assume that management is about putting right amount of “pressure” on developers. The underlying assumption often seems to be that developers are a bunch of idiots who have no sense of priority and will work based on the amount of pressure managers put on them. If that's the culture you want to build, that's how your developers will react.
What I would recommend instead, is hiring kickass programmers who are smart. Exposing some aspects of the business side to them, being completely open about everything e.g. what do we lose if we do not ship this feature by next month. Most developers sense urgency and react very maturely when you trust them. You will be surprised to see that most developers go out of their way if they sense a need of urgency or firefighting within their projects. The moment you have to “put pressure” on a team you have failed as a startup. Maybe you've failed at recruitment or failed at trusting people, but none the less, you have failed as a startup. My personal experience is that if you teams are awesome and your management is completely transparent the teams will react to the situations pretty much automatically.
You also have to remember that while Peopleware was an awesome book, a lot of other books recommend that you involve the development teams while making the schedules. Honor their opinions and let them pick their own timelines. That way the timelines will be much more realistic and they will be aware of the business importance if these are not met. Plus, they can also suggest workaround and the team (both managers and developers) can collectively drop features which are not hugely important intelligently when they near a timeline and discover that they are not going to meet it.
Remember, you don’t get a fast paced vehicle by getting yourself behind a automobile and pushing it really hard. You get fast pace by buying a car with a really fast engine. Culture is no different. You don't need to push to build a fast paced culture. You just need a strong, wiser, competent, strong team of programmers. That and you need the fuel of trust, team work, friendship, understanding and empathy to keep the speed going.
overreaching pressures on developers
is a good sign of poor project management. If you try to solve the problem and protect team from the PM you have to restrict PM's rights in some way. That will inevitably lead to even bigger problems in project management.
Instead, I'd suggest to replace the PM or educate him/her.
If you think about most successful startups these are usually stories about passion and involvement to achieve some kind of big goal, or make big vision come true.
So the trick is to get people who genuinely care about your startup and its success. Of course you still shouldn't expect people would work crazy hours just to push the product ahead but chances are good they will at least run an extra mile. In matters much not only in terms of engagement or staying late on occasions but also in terms of their involvement in product development -- sharing their thoughts and ideas what can be done better, getting them to promote the product among their friends etc.
If you analyze this set of startup failures you can bring many of them to some kind of lack of engagement.
If you happen to base on just average hires to work on your startup finding the right balance will always be hard. In startup it's more valuable to have someone who maybe not that skilled but at least they genuinely care. And that would be what I aimed for in this situation.