I first published this piece in August, 2014 to some acclaim on Hacker News. Since then, I’ve joined another startup, seen a few million dollars more raised, and these myths and truths hold true. There are pros and cons to working at startups, but I still think it’s a pretty low-risk proposition for a software engineer.
When I first graduated from college and went looking for a job with a startup I had no idea what to expect. I knew what I didn’t want - I had done internships with some huge corporations already - but finding honest accounts from engineers who had worked at startups was difficult. Most of the articles I found were sugarcoated accounts of the rare success stories. Many of the early employees at Google and Apple and Facebook had written books and blog posts galore, but what about the thousands of less lucky startup employees out there? What about the average startup engineer’s story?
At least three out of four startups fail, and most of them that do succeed don’t have anywhere near the exit that the household names above have had. I suspected - and have since confirmed - that the true experience of working at a startup is much more textured.
Since college I’ve been working in startups at various stages and I’ve met hundreds of employees at other startups as well. I’m part of a couple startup CTO networking groups, and most of my friends have or do still work for startups. While the glorious fairy tales that come out of the most successful companies might put stars in your eyes, the numbers aren’t in your favor if you think the next big exit will likely involve you.
That said, working at a startup - even one that isn’t “successful” - can be an interesting and rewarding experience. I’ve seen the downside and I’m still doing it along with thousands of others across the country. Here are a few of the myths I’ve heard as well as some of the truths I’ve learned while working as an engineer for early stage startups:
Myth: you’re going to get a huge equity payout
The overwhelming majority of startups aren’t big financial successes. Chances are, if you come into a company early on with a bit of equity your stock will be so diluted by the time an exit comes that it won’t make up for the salary cut you took to be there. That is, if you’re lucky enough to be involved in an exit at all.
If you leave early, are let go for any reason, or are found to have violated any part of your employment agreement, you might lose all of your stock. If you go into a startup as an employee for the money, you’re going to be disappointed 9 out of 10 times.
Truth: you’ll get to set the culture, standards, and technologies used
Most engineers who come into an existing organization are met with a slew of predetermined rules, established policies, bureaucratic requirements, and “best” practices that you’re unlikely to change. On the other hand, when you come into a startup, almost everything is fluid. I’ve never been part of a startup team that didn’t welcome new ideas and tools if they could be implemented quickly. You are also likely to get some input on the way future engineers are hired and the way your technology team interacts with the business team. These extra-engineering responsibilities can be tough for some to handle, but if they sound like something you’d enjoy, you’ll likely fit right in at a startup.
Myth: you have to work 80 hours per week all the time
There may be times where it’s necessary to put in extra hours. I know I’ve spent more than a few long nights and weekends coding in my past three years with startups, but those are balanced out by the option to telecommute, lax vacation policies, and flexible working hours when things aren’t as busy.
You should be ready to sacrifice a bit of your free time - especially if the engineering team consists of just one or two people - but you can’t expect to sustain a grueling 80+ hour work week for long. You’ll need balance in order to avoid burnout, and all but the worst employers will recognize this.
Truth: you’ll have more freedom to choose the projects you work on and how you do them
Even though you might not be required to spend every weekend at the office, it’s possible that you’ll find yourself choosing to do so anyway. Unlike engineering at a big company, startups often allow you more freedom to choose the projects you work on and how you choose to do them: Want to create the next internal service in a new language? Why not? Want to create your own hybrid framework based on standards you’ve implemented on your engineering team? Go for it.
These things would be difficult if not impossible to get done in a large corporate environment, but when teams are small, the stakes are high, and people need to move fast, you have more room to try new tools and experiment. An environment that encourages learning and experimentation keeps engineers more motivated than one that stifles its technical talent.
Myth: you have to be a full-stack rock star hacker to work at a startup
Every time I see a job listing that demands a “rock star” developer who wants to work for shit money at a no-name company, I imagine a non-technical founder on the other end who is bound to underappreciate and undervalue some poor developer who gets suckered into working for him.
“Rock star” engineers sometimes work at startups, but usually they work for big companies who can pay them twice the salary and have multiple indoor water polo pools and racquetball courts. Engineers who work at startups aren’t necessarily hacks, but they tend to come from non-traditional backgrounds, enjoy both the business and technological sides of their work, and have a passion for the problem they’re helping to solve. You don’t have to be a “rock star” - whatever the hell that is - in order to work at a good startup, but…
Truth: you must be willing to learn and teach yourself anything
You will probably have limited access to mentors and teachers when working at a startup. Big companies put junior engineers through training programs, send them to advanced classes, and make them sit through certification tests, but you rarely see any of those at a startup. Not knowing how to do something isn’t a valid excuse. One of the best skills you can learn if you intend to work for a startup is the ability to figure out things on your own.
Myth: startups are magical machines that are more productive and groundbreaking than large organizations
You might be exposed to moments of apparent genius while you’re working at a startup, but just as often your team will mistakenly ship something that doesn’t work. The downside to working for an organization that isn’t bogged down with bureaucracy is that there’s less stuff in place to slow down new bugs as they enter production.
Truth: startups are constantly facing uphill battles and you’ll rarely have the resources you need to do projects as well as you’d like
It seems like startups move faster and create solutions to difficult problems more efficiently than large companies, but the truth is that they normally have a lower quality threshold than their corporate counterparts. It’s sometimes difficult to accept this as an engineer because we strive for elegant, well-tested solutions, but the pace at a startup rarely allows for 100% code coverage. If you can live with sometimes letting go of a project that is “good enough” you might be able to make it in a startup environment.
Myth: there’s a lot of risk for engineers at startups
It’s true that financial circumstances and external forces can quickly shudder a burgeoning startup, but life as an engineer at a large company isn’t a whole lot better these days.
At least in a smaller organization you’ll (hopefully) have a close enough relationship with the founders to sense that things are looking grim before the doors actually close. Corporations are as likely to sell off a department without more than a week’s notice as they are to give employees severance packages.
Truth: the work environment is fun, the connections you’ll make are invaluable, and the flexibility is unbeatable
I honestly enjoy coming into work every day. In part it’s because I like and respect the people I work with, in part it’s because I face new challenges and meet interesting people all the time, and finally I enjoy coming to work because I can do it on my time. I’m a morning person, so I normally come in early, take a break in the afternoon to work out, and then leave when traffic settles down a little later in the evening. Some of our team prefers working late into the night. As long as we can all get together when we need to, it’s awesome to have the flexibility to work when you work best.
I’m not going to lie and tell you that being an engineer at a startup is the best job for everyone. I’m not going to tell you that it will get you rich or make your life stress-free or increase your employability, but I do believe that if you’ve got the right personality it’s far more stimulating than any other job you can find. The opportunity to pursue a cause that I’m passionate about and that improves the state of education in this country makes my job worth the occasional headache, and succeed or fail, I am just glad to be going along for the ride.