I agree wholeheartedly with Paul, but you do have to balance it against the amount of work involved. Something that's fulfilling at 40 hours a week can be grinding when you're at it 60+ hours a week.
The problem with working as an employee for a start-up is that you're required to have the commitment of a founder, without the upside. There may be some people who will knowingly invest their youth in buying someone else a yacht, but in my experience many startup employees are unrealistic about their chances. Most businesses aren't going to change the world or make average employees rich.
From a rational perspective at least, I think it's hard to justify being an employee at an early-stage startup unless you're there to build the experience and contacts necessary to start your own company. There are plenty of medium-sized companies out there that offer similar opportunities for employees without their bureaucracy of a bigcorp or the risk and time commitment of a startup.
I agree with working for a medium company can be a very good trade off (I am presently at one and enjoy my job a great deal). However, there are always trade offs: in a small company you get a much bigger say in the product features and its architecture; medium companies might also have the same broken processes/tools/standards as an early an early stage standards but they would be much harder to dislodge.
It really comes down to the specific company/specific team/specific position. Main thing is not to have unrealistic expectations (changing the world, earning money/fame power) as well as have a clear picture of what you're looking for (technical challenge, experience for starting your own company, career advancement, etc...).
The other key thing I've learned is if joining an early stage start-up as an engineer, is to be sure that the sort of programming they do is what you want to do. Otherwise, you'd feel underutilized despite working start-up hours. For example, joining a start-up building web applications on the LAMP stack is a bad idea if you want to do systems programming; some start-ups begin with a simple technological stack but then invest a great deal in in-house systems ("build" being a better option for a start-up then "buy") as they encounter scalability/performance challenges (Facebook, Twitter, etc...) -- but the average early stage start-up would never encounter these challenges in the first place.
Comments
I agree wholeheartedly with Paul, but you do have to balance it against the amount of work involved. Something that's fulfilling at 40 hours a week can be grinding when you're at it 60+ hours a week.
The problem with working as an employee for a start-up is that you're required to have the commitment of a founder, without the upside. There may be some people who will knowingly invest their youth in buying someone else a yacht, but in my experience many startup employees are unrealistic about their chances. Most businesses aren't going to change the world or make average employees rich.
From a rational perspective at least, I think it's hard to justify being an employee at an early-stage startup unless you're there to build the experience and contacts necessary to start your own company. There are plenty of medium-sized companies out there that offer similar opportunities for employees without their bureaucracy of a bigcorp or the risk and time commitment of a startup.
I agree with working for a medium company can be a very good trade off (I am presently at one and enjoy my job a great deal). However, there are always trade offs: in a small company you get a much bigger say in the product features and its architecture; medium companies might also have the same broken processes/tools/standards as an early an early stage standards but they would be much harder to dislodge.
It really comes down to the specific company/specific team/specific position. Main thing is not to have unrealistic expectations (changing the world, earning money/fame power) as well as have a clear picture of what you're looking for (technical challenge, experience for starting your own company, career advancement, etc...).
The other key thing I've learned is if joining an early stage start-up as an engineer, is to be sure that the sort of programming they do is what you want to do. Otherwise, you'd feel underutilized despite working start-up hours. For example, joining a start-up building web applications on the LAMP stack is a bad idea if you want to do systems programming; some start-ups begin with a simple technological stack but then invest a great deal in in-house systems ("build" being a better option for a start-up then "buy") as they encounter scalability/performance challenges (Facebook, Twitter, etc...) -- but the average early stage start-up would never encounter these challenges in the first place.