A bootstrapped start-up is a great place to work. However, not everyone can start their own – you need to have enough money in the bank to live on for about a year or you'll need to do consultancy work at the same time, and deal with the overhead of context-switching your brain between consultancy and your company.
The next best thing is to work for a start-up that you don't own. So why should you give up your job in a bank or IBM and work for a start-up you've never heard of?
- Your job in a big company isn't that secure – the world is in recession and big companies tend to see expensive developers as an easily reducible cost centre.
- Your job may well be more secure in a start-up – a well-run start-up has much lower costs and inertia than its large competitors. The recession will help to weed out the worst managed and most bloated competitors from the market.
- You can influence decisions to a much greater degree. You get to work closely (in many early-stage cases, across a cubicle partition) from management, making it easier to pitch ideas. Start-ups are also generally more amenable to trying out new tools and languages.
- Good start-ups tend to be run by people who read books about managing programmers and they want their programmers to read books about their craft.
- You'll almost certainly get the chance to buy some of the company. The payday from owning a measurable percentage of a company that gets acquired is spectacular, and will give you the finance to start your own and give the next generation of great programmers somewhere to work.