7 reasons to join a startup and 1 reason not to
March 20th, 2021
This is the other side of the coin to Chip Huyen 's recent blog post, 7 reasons not to join a startup and 1 reason to. My goal isn't to negate everything that she's said but instead offer a balance to her perspective by providing a more optimistic one. Some of what Chip said is valid; it's just a bit one-sided. Hopefully, by reading both of our posts (or just mine), you'll get a completer sense of what working at a startup is like. Her reasons for not joining a startup are in strikethroughs or block quotes. You can find her whole post here.
Table of Contents
7 reasons to join a startup
Goodbye work-life balanceWork-life balance depends more on the company you work at than on the stage of the company You'll pick up bad engineering practicesYou can pick up decent engineering practices Less mentorshipGreat mentorship? You won't get richYou won't get very rich at a Big Tech Bad managementManagement is good if you're aligned You might have to do a lot of things you don't want to doYou get to do a lot of things that founders get to do No clear career growth trajectoryYou grow your career by growing the company
1 reason not to join a startup
Goodbye work-life balance Work-life balance depends more on the company you work at than on the stage of the company
"Nobody told me how to spend my time, but when everyone else worked over the weekend and responded to my Slack messages any time of the night, I wanted to do the same." - Chip
Since we graduated from Y Combinator 's startup accelerator program last summer and hired a customer success lead, product designer, software engineer, and a handful of interns, I've been working 40-50 hours a week, and I only work weekends when I'm bored. Yet, I know people at Big Tech companies who work 80 hours a week, year-round. Interestingly, this also comes as news to other people at those same Big Tech companies. Not only is work-life balance company-dependent, but it also seems to be invariably team-dependent.
During YC, I did occasionally work 80-90 hours a week. But that was because we were trying to maximize our fundraising potential during Demo Day, and the company consisted of just the founder and me. The more people you have, the greater the division of labor, and the more efficient things become due to less time wasted from context switching (thanks capitalism).
Takeaway: On average, startups probably do have less work-life balance than larger companies. I've never heard of engineers at Big Tech companies working 6 days a week, 15 hours a day like engineers at another YC company in our batch did. However, it really comes down to the company and the team.
You'll pick up bad engineering practices You can pick up decent engineering practices
Again, this is dependent on the startup. In my experience, I've been fortunate to pick up decent engineering practices, perhaps better ones than if I were working at most tech companies. The reasons for this are as follows:
I began my time at Virtually by working on the codebase with my founder, who spent close to 2 years as a software engineer at Facebook and was mentored by a core React library developer.
Later, I worked with other employees and contractors skilled at engineering–from a senior engineer with years of experience at PayPal and Coinbase to an ex-Google, 2x ACM ICPC world finalist, and lead software architect at the largest e-commerce company in Bangladesh.
Recently, we also started using PullRequest, which offers Code Reviews as a Service. They employ people like Elifaz Filho, a senior software engineer at Facebook, and Dylan Drop, a director of software engineering at GruhHub to review my code.
Occasionally, code quality does take a spot on the backburner because of higher priority tasks (which often happened during YC). However, there's a difference between not knowing what to do and knowing what to do but not doing it due to business priorities. The key is slowly moving from the former to the latter, even if sometimes code quality is jeopardized.
"Consider the following scenario. A customer requires a new feature, and you have to deliver it in a week. This feature is similar to one of your existing features, so the best solution is to refactor the existing code to allow some of it to be reused.
However, refactoring alone would require a week. Your tech lead decides that you should just duplicate the existing code and turn it into a new feature." - Chip
Companies that always prioritize short-term velocity over long-term scalability will not last very long. Though our engineering practices haven't always been perfect, we've realized their importance and how they can reduce bugs in the long-run–and by extension, increase revenue.
Takeaway: Thus, if you are a junior engineer looking to join a startup, I would suggest joining one with technical founders or senior engineers. Not only can they put in place good engineering practices themselves, but they are also more likely to value good engineering practices and pay for services such as PullRequest. Startups without technical management may sometimes feel that it is unnecessary to develop good engineering practices until it comes back and bites them in the ass.
Note: Just because Big Tech companies usually have good practices through continuous trial-and-error, it doesn't mean they've reached the global optimum. Startups often create new processes better suited for their business than those used at a Big Tech. Every successful company with different practices than existing ones is proof of this (e.g., moving fast and breaking things works much better at Facebook than at Boeing).
Less mentorship Great mentorship?
At NVIDIA, I could come to my mentors for questions from general career dilemmas to obscure engineering knowledge. Once in a while, I browsed the org chart of tens of thousands of employees, identified people I want to learn from, and asked them to meet at the coffee machine, which they usually accepted. - Chip
I had a similar experience at Microsoft, where I took advantage of their internal directory to ask people out for lunch each week, but I soon realized that too few of the people I talked to had my dream career. These people also didn't really know much about me as I didn't work with them, so the insights I got from these chats were usually pretty shallow. I had a mentor assigned to me, but I also didn't work closely with him–either in physical proximity or in code.
"Startups don't have that many people for you to reach out to in the first place." - Chip
At Virtually, since my mentors are also my co-workers, they have offered more personalized advice than my mentors at Microsoft ever did.
Though my founder never stayed at Facebook long enough to officially become a senior engineer, he's taught me subtle React optimizations that even our senior engineer didn't know. He's also drilled into me the values of building trust and moving fast. I worked with the first employee at Plaid (valued at $15B) and he taught me a lot about ego and what it means to be a founding member of a company that you aren't a founder of. Dhanajoy Biswas, the first employee and Lead Software Architect at Backpack (YC S14), taught me how he dealt with imposter syndrome and served as an invaluable advisor as I took on a massive data migration project. I'm also excited to learn from one of the Brex's (YC W17 and currently valued at ~$8B) first engineers who recently joined us.
These are some examples of what mentorship means to me, and I'm content that I've received advice from these people who have helped me grow. Perhaps there is a side to mentorship that I haven't experienced that you get at Big Tech companies, and I'm missing out. But until then, the grass will be green enough on my side.
Takeaway: Ultimately, it comes down to what kind of mentorship you want. Do you want mentors who know you better and have experience building companies from scratch? Or do you want mentors who might not know you as well and are more specialized in their fields?
You won't get rich You won't get very rich at a Big Tech
Probability (appx) that a startup fails: 80% - Chip
The chance of joining a rocketship like Plaid early on is indeed incredibly slim, and the risk-adjusted financial outcome of joining the average startup is lower than joining FAANG or a late-stage startup. However, not all startups are created equal. It's silly to say that all startups have an equal chance of failing. For example, do you think Elon Musk would have the same chance of failing to build a startup as a high schooler? Obviously not. Likewise, research concludes that the average startup fails with a 50% chance in their 5th year, but for YC companies, the probability is only 20%.
Furthermore, what is the probability that you will become a decamillionaire by working at a Big Tech company as an engineer? 0%. Not even 0.00000001%. Literally zero. Though there is a significant variance in startup outcomes, you still get a shot at creating incredible wealth by joining a startup. One of our contractors who joined Plaid right out of college 7 years ago is worth $60M now–assuming he received somewhere around 50K shares (0.5% of the 10M shares usually issued at incorporation). Whereas if you join a Big Tech company, you won't even have a shot at that kind of wealth. Plus, you get taxed much more on ordinary income than on long-term capital gains.
"If you join late at the startup (say employee number 100+), even if the company succeeds wildly, your equity will be worth very little." - Chip
This is simply untrue. Even if you had joined Snowflake last year as the 1000th employee, your equity would be worth over $1M today. Imagine having joined them as their 100th employee. Source: Snowflake employee
Takeaway: 1. Starting a company or joining an early-stage startup is the easiest way to become very rich (> $10M). It's impossible at a Big Tech company. 2. Not all startups are created equal. Look for startups that you think will be an outlier.
Note: Nevertheless, your first priority should be working with people and on a mission that you love. This way, even if the company fails, you'll still have had the time of your life.
Bad management Management is good if you're aligned
"Bad management is frequently the cause of conflicts. Bad managers might make you feel like they don't listen to you, don't value you, don't treat you fairly, or just don't have your interest at heart." - Chip
In my experience, if you're able to build trust with your managers/founder(s), you will have significant control over how you are managed.
Although first-time managers/founders are commonplace at startups, having aligned incentives makes the management better. If you and your founder/manager have the same goals of building a healthy culture and scaling the company, they will often take your feedback to heart because they understand that if they don't, people will start leaving, and the company will die. Whereas if you have a terrible manager at a larger company, your only hope is to switch teams or leave the company. Facebook isn't going to fall apart if a few engineers leave because of bad management. You're just a cog in the machine and are easily replaceable. At an early-stage startup, a few people quitting can mean the difference between startup success and failure.
Takeaway: Chip is correct in saying that business needs are often prioritized over individual needs at startups. Without a thriving business, the company wouldn't even be able to pay you. Thus, if your needs aren't aligned with growing the business, don't join a startup.
You might have to do a lot of things you don't want to do You get to do a lot of things that founders get to do
"The upside of being a generalist is that you get exposed to many different aspects of a company. The downside is that you have to do a lot of things you don't want to do." - Chip
Do you know who else has to do a lot of things that they don't want to do? Founders. When you're working at an early-stage startup, you might indeed have to do things that you don't want to do. But, if you hope to be successful at anything in life, you'll need to get used to the chores.
The best way to learn how to be a successful founder is by being one. The next best way is to join an early-stage startup. At the end of the day, you'll be working super close together, and your incentives will be aligned (increasing revenue, reducing burn, hiring well), unlike at more sizeable companies (passing performance reviews, forming alliances). Institutional companies are so bureaucratic that they've devised different metrics at every company level to maintain some semblance of efficiency. It's not the job of a junior-level engineer to care about the company's revenue–they do well by focusing on performance reviews. Likewise, salespeople do well by increasing conversions. At a smaller company, you live and die by how much money your company has, so it becomes less about your needs and more about the company's needs.
"There are things that you don't want to do because it contradicts your sense of morality. A friend of mine left a startup because she couldn't lie about the company's product any longer." - Chip
This is not the norm (at least not among YC companies), and if everyone is lying about the product, you should definitely leave.
Takeaway: Join an early-stage startup if you want to get your hands dirty and grow the company, not if you only want to work on the glamorous bits. The smaller the company you join, the more hats you will
have to get to wear.
No clear career growth trajectory You grow your career by growing the company
"Big tech companies tend to have a structured way of defining career growth. Engineers can even climb numeric ranks such as L3, L4, L5, etc." - Chip
There is indeed no clear career growth trajectory at early-stage startups. There aren't bi-annual performance reviews that you try to pass to get promoted to E4 or L5. I've even heard of people who try to game these reviews by playing politics.
However, you can grow your career exponentially faster than at a larger company by growing the company at a similar rate. Instead of growing your career by being promoted to L4/E5, grow the company by increasing revenue and outperforming KPIs. For example, the company's goal could be to raise a Series A by achieving 80K MRR. By improving processes or building bug-minimized features, you can help retain customers and net the company more revenue. When you interview for your next position, you'll be able to precisely describe how you contributed to the company's growth. As we move towards a more skill-based and not title-based labor market, these skills that you develop will come in handy, especially if you're interested in startups.
Takeaway: Join a startup if you're interested in acquiring tangible skills related to building organizations from 0-1. Don't join a startup if your goal is to climb neatly placed titles.
One reason not to join a startup
Don't join a startup if you don't believe in the company, the team, the product, or the mission enough to think it'll be an outlier.
Founders and early-stage startup employees don't sit on their asses all day analyzing their company's probability of success and expected financial return. If these people all thought their startups would result in the average outcome–failure, Y Combinator wouldn't exist. Silicon Valley wouldn't exist. Only when you genuinely believe you can change the world will the world conspire to make it happen. As Steve Jobs said best, "the people who are crazy enough to think that they can change the world, are the ones who do." This is why I think optimists will always rule the world.
Do you believe in your founder(s), the team, the mission, or yourself enough to make the startup a success? Do you think you're joining the next [insert Big Tech company name here]? Let me know in the comments.
Thanks to Douglas Qian, Helena Gregg, and Nathan Leung for their feedback on this piece and Chip Huyen and Nathan for inspiring me to write this with their startup experience blog posts.