Valid reasons to work for a startup: - You are a cofounder. - You have little experience and you are using this to break into the industry, and get experience on many different technologies ("wear many hats"). - They are working on a very specific problem or using a specific technology that you strongly desire to work on and it's difficult to do it anywhere else. - You want to work a certain way (remote, on the beach…
Main reason: it's more fun. I could be a cog in a giant corporate machine, or I can have a measurable impact where I work. I can stay in my lane and do my specific job tasks, or I can run around putting out fires and helping wherever help is needed. I mindlessly build the specific design product handed me, or I can guide my own work in accordance to the needs of our customers and the business. I can follow policy and…
I think that point can support working for either a big company or a small company depending on what type of impact you are looking for.
I've worked for startups in the past and have had a huge impact on the startup but almost no impact on the outside world because the startups just weren't tackling very visible problems.
Now I work for Google and I have basically zero impact on Google i.e. basically nothing that I can do will ever move the dial in terms of Google's revenue, etc. But I've worked on several projects that have had a big impact outside of Google. For example, I was on a small team (3 people) that developed the Python 2.7 runtime for App Engine (this was a while ago) and I was on another small team that implemented the server-side infrastructure for the Google Home. I also developed the screensaver for Chromecast - which is a tiny tiny project - but still millions of people love it.