I have two offers and am having trouble deciding which one to take
Company A: Non-Tech company with ~1500 employees. They have a cloud computing division to manage their infrastructure
Company B: Pre-seed stage startup (2 - 10 employees)
What am I looking for?
Any thoughts are appreciated. Thank you!
I would go with Company A, the more stable option.
What I've learned about startups is that things change (read: go wrong) all the time. You should assume that promises of funding/work will change dramatically once you join. It's not that the founders are malicious, but VCs get cold feet, and nothing is guaranteed.
Company B has 2-10 employees with $2M in pre-seed funding -- that only gives them a year or two of runway if we assume everyone is in the US. The funding environment is tough, so it's not a foregone conclusion that the seed round would even happen. I'm also making the assumption here that there's no meaningful revenue given the pivot to a college trivia app...
I'd only join this company if you know the founders very well, and you view it as training ground for your own startup in the future (e.g. learning how to pitch, ideate, etc).
Company A must be more stable if it has 1500 employees and an entire cloud computing division. It leverages your past experience at Amazon. It may not be the perfect company in terms of comp/growth, but it provides the stability needed. Later, when you have more bandwidth, you can decide if you'd like to hop jobs again.
Company A is the obvious winner to me:
In other words, it has a lot of the same benefits of working at Big Tech but just toned down as it's a non-tech company. This video covers it more: Why You Should Start Your Career At A Big Tech Company
In a pre-seed startup, there will certainly be no real performance review or structured feedback culture. There's also a very high chance you're the only engineer working on your stack (e.g. you are the solo backend developer). This is really bad for engineers earlier-in-career as they crave clear mentorship figures to learn from.
In the first 3-4 years of your career, your goal is foundation building: Create a bedrock of very solid skills (both technical and non-technical) so you can go anywhere (like an early-stage startup) and crush it. But you're not there yet, so I recommend going to bigger companies (even if they're non-tech) to maximize your chances of building a good foundation.
Another factor to consider is the quality of the team, but I can't imagine it being so bad at Company A that you take Company B instead. Thoughts on understanding team quality here: "How possible is it to spot red flags about toxic culture during the interview?"
Rahul and Alex already made good points and I have nothing else to add for going to company A. To play devil's advocate (as a junior SWE w/ 1.5 YoE at a seed stage startup) here are pros/cons of the startup:
You learn a LOT in a startup. I've learned wayyyy more in my 6 months at the startup than I learned in my previous jobs. You get exposure to a lot of different parts of the code. In my previous roles I did a lot of grunt work or stuff that was not rlly adding a ton of value to the business and it was a struggle to get more scope. I got lucky that my startup was wanting to hire more jr ppl and mentor them instead of hiring senior swes.
if the founders at your startup are somewhat nice ppl they will understand that ur a junior and would mentor you to a certain extent. in my experience at F500s there isnt a tonnn of mentoring happening anyways because the code quality and standards are not that high. There is a much lower threshold of expectations and I struggled to get critique when I was working at those companies. In other words there wasnt a huge culture of being a 10x developer at F500s, as long as I did the job ppl were happy and didnt really push me to go above and beyond
It can be hard to switch roles/teams. A lot of companies have a cool-off period when you join where you can switch teams or the team switching process is red tape filled
Another thing is that the company A role seems very not SWE heavy. Chances are you wont be able to push a ton of code to prod or have a ton of impact in that role or learn much.
On the other hand you will have more time in company A to look for other jobs so you dont need to spend a ton of time there. Job hunting is also much less stressful when you already have a job. Also trying to monetize an app targeted at broke college students is hard. College students will do anything to avoid paying for something.
To add on, if you genuinely trust the founders (which is hard and things change and anything over 3 months is likely just optimism) I would check how much runway they have. If it is over 24 months then i would personally take it
I second, third, and fourth everything that has been said. Here are two short videos to add my two cents: