How does working at a startup compare to working at a big corp or academia?

There’s a huge difference among a startup, large corp and academia and I wanted to share some of my experiences.

It’s been a while since I wrote a blog post. I’ve been crazy busy and had so much learning over the past few years. Especially this year, 2020’s been a crazy year for me and everyone else. Ever since pandemic started, I’ve been working from home and this lifestyle became a norm, which I would have never imagined would happen so early in my life. Becoming a digital nomad has been my goal since I’m a teenager and I feel I’m getting really close.

When I graduated, I applied for multiple jobs. I initially struggled. I wasn’t so good at white board coding interviews, so I failed multiple software engineering interviews even tho I already had some software engineering experience. Also the projects I had worked on were so small compared to real software engineering projects. I have more experience working with large scale systems now, but at that time, the systems I worked on are either entirely created by myself or worked with one other person. I didn’t have enough software design experiences. Luckily I also never give up until I get something so I eventually started getting offers and I decided to work at a startup since they liked my experience and my willingness to learn new things.

I’ve worked at three different types of organizations so far: Academia, large corp, and then a startup.

Now let’s compare a startup to a large corporation and academia.

A startup grows so fast and you will be required to work multiple different roles because the team is always short staffed. When I joined my current company, there was about 80 employees and about 20 of them were engineers. Now, we have over 200 full time employees and many more contractors. The engineering team grew so much too. This all happened in the short period of 10 months since I joined this February.

My team, which deals with B2B businesses, has changed so much too. When I joined the company didn’t really have a huge enterprise focus, but as COVID-19 started spreading the whole paradigm has changed. Someone made a meme about “Who led the digital transformation of your company?” but seriously this is true. The whole world has been forced to transform their work environment in such a way that ppl can work remotely. This has also sparked a trend of at-home lab testing, which has been slowly becoming popular. We started partnering with hundreds of corporations and universities and we are now helping so many ppl get tested for COVID-19.

The amount of workload has been crazy for me but on the other hand I also learned so much about software engineering including business aspects of it.

Working at a startup means you will be forced to move fast. Oftentimes deals are made suddenly and you are forced to switch priorities multiple times even in the same month. It’s frustrating and context switching is very hard, but it also means that you will be in charge of multiple different projects in a very short period of time. You will be directly making an impact on the world too and you will definitely feel it. This is one thing I like about working at a startup.

Things are slower at a large corporation at least in my experience. Especially for me because I worked at an internal network security team where software engineering is a second focus. It’s more for automating existing manual processes than for creating new products. The average age is older than typical software engineering teams too. I’m talking about the 30s and 40s. At a startup the company is filled with 20s and 30s. Large corp is a great place for someone who wants a stable work life and high income. At a startup you will have more power to decide things. Your leadership skill becomes extremely important. Ofc it’s not like you can decide everything on your own. You have to be able to communicate with the members and decisions are collectively made. However, there’s a difference in how these decisions are made. At a large corp, you have to wait A LOT. You have to wait for approvals from your boss’s boss’s boss’s boss to do anything. It’s very bureaucratic. And the impact you make is smaller. It might be a small internal-use-only tool with a tiny amount of users. A startup can’t afford to hire people who work on small projects, almost all projects you work on would have a pretty big impact at the company and in the world depending on the type of project you work on.

Other things, salary. There’s a significant difference in compensation. It’s usually Academia < Startup < Bir Corp. Academia pays the least and your pay would mostly come from the grants that your lab has won. So if the lab director sucks at gathering money, your pay will be shit too. There’s not so much focus in making money. It’s more for following your intellectual curiosity than making this much money for this much of a work type of things.

Startup salary isn’t so great either, but better than academia salary. You might feel slightly depressed compared to your peers working at a big tech company. OMG, they make so much money. It’s typical that your friend would be making 2-3 times more than what you make. Sometimes you won’t even believe the amount of the money your friend at a big corp make. But these extreme examples are also rare. Extreme high salary is usually accomplished at a company that has dominated a certain field. Examples include Google, Amazon, Facebook, etc. If you have played a game Monopoly, you will know that once you dominate the same color, it becomes so easy to collect money from other players. Same analogy applies here. Those big tech companies make insane amounts of money because they are essentially monopolies.

Startup salary usually comes with stock options, but unlike big corporations these are not RSUs. RSUs are better because you don’t have to buy them. They are part of your salary package. The reason startups provide stock options instead of RSUs is because it has a potential to grow so much more than big corp stocks. For example, if you got an Amazon stock from 1997, you would have bought it for 1.73 per share, but now it’s over 3000 per share, which means your money would have grown 1734 times. If you’ve got even 3000 bucks worth of that initial shares you would now have over 5 million bucks. Insane amount of money. But it comes with a huge risk. There’s no guarantee that your stock options are gonna keep going up. There’s so many things that can go wrong. You need to be able to accept the level of uncertainty and work hard so that your company is gonna succeed.

Another difference is movement of ppl. At a startup, it’s normal for you to keep job hopping. Ppl usually change jobs for the average of every 1.5 years (no statistics here, just something I’ve heard and seen). Academia and large corp are pretty slow in this regard. There’s multiple reasons behind this and here’s what I think. Most people work more than 1 year at least since that’s when your stock options start vesting. Most tech companies have a one year cliff rule in stock options.

  1. There are always better opportunities. If you have a skill, it’s not hard to find new jobs since engineers are always on high demand.
  2. People get burnt out. Sometimes your workload can be crazy when the business is growing so fast. And you cannot tolerate the amount of stress.
  3. Bad management. Management is hard at any corporation but it becomes a huge problem when bad management tries to keep employees work for unrealistic deadlines and keep changing priorities all the time. You certainly will be forced to work long hours.
  4. It’s just a culture. Innovative people naturally want to try out new cool things and your job can get boring even if it has been amazing for the past several months.
  5. There’s no future for the business. Business can fail for multiple reasons, but if you think the startup you work at is gonna fail then you should leave sooner rather than later. Since you already work for less than bir corp salary, you’re financially lagging behind your peers working at a big corp. And if the business fails your stock options won’t be worth a penny.
  6. You simply get tired of always going up. You will definitely have a more stable life at a big corp. It’s gonna be less stressful too. You would have more time with your family and friends. Better work life balance.

And now here’s info for international students. A startup is usually not a great choice for an international student because there’s no guarantee that they will sponsor you for an H1B Visa. This is caused by the cash-poor nature of startups and low retention rate. Startups will try to save as much cash as possible since when they run out of cash is when they go out of business. Cash is king is a common saying.

I’m an international myself and my choice to work at a startup was a pretty crazy one to be honest. I should have just practiced algorithms more seriously while I had more time in college. I’ve started studying algorithms again but it kinda gets hard after you start working because you are tired after work and you will have forgotten many algorithm concepts that you won’t use at work. I would not recommend working at a startup until you get an H1B or green card. You can just do wtf you want once you get a greencard. Paperworks are pretty complicated. It takes many days to figure out. If you work at a large corporation, they will most likely have a team specifically created to support you to get sponsorship. At a startup, everyone is extremely busy and the HR person usually doesn’t know how to finish those paperwork. You would need to proactively push them to get it done and it can take a lot of energy.

Here’s my recommendation.

  • If you are an international student, then aim for big tech companies. Learn as much best practice as you can over there, get sponsored for a visa so you can stay in US longer, and then start looking for startup jobs.
  • If you like to move fast and try out many different things and you have strong stress tolerance, choose startups.
  • If you are a researcher type who want to focus on your intellectual interest and don’t care about how much money you make, then go for academia. If your research is impactful, it’s pretty common that you get headhunted by a big corps and offered a huge salary if you are interested.
  • For any case, it’s good to keep practicing coding interviews because having that particular skill definitely increases your chance of getting good jobs.

Also keep in mind I only have like 3 years of software engineering experience if I include time when I was an undergrad researcher. I would be learning so much more in the future and my opinion might change, but here’s what I have learned so far and wanted to write it down so I don’t forget this feeling.