This is the first in a 5-part series on how to choose your next company. One of the most common questions from software engineers is: given the abundance of opportunities, how do I know which will enhance my career the most?
There are a multitude of factors that play into it, including financial health, company size, engineering standards, your team and culture, and your manager. Over the next five days, we'll explore ways to evaluate the potential of a company as an employer and your probability of success there.
Today's focus is on arguably the most important indicator of whether you should join a company: is it making enough money to support your cost of living, run the rest of its operations, and still have cash to go around? In other words, profitability, or at least the path towards profitability.
As software engineers, you'll likely be looking at an offer that's comprised of some combination of salary, company stock, bonuses, and benefits. All of these are linked to the business performance of the firm, which we'll get into it a bit.
First, determine if the offer is worth taking by evaluating the offer in aggregate. Determine ahead of time your risk tolerance-- that is, how much personal risk you're willing to take for increased gain. Ideally the base salary is competitive for your location, but startups may be lighter on cash and heavier on stock-- a plus if you see things going well. Some questions to ask:
You'll definitely want to have a sense of the minimum total compensation you'd be willing to accept. How much do you truly need for rent, food, and bills? Make sure you absolutely don't go below that number.
Above that, it's discretionary money and it's easy to just take the offer with the highest total sum-- but one of the perks of being a developer is that you can do a little forecasting. In 2005, Yahoo might have given the largest total compensation package, but what if you had an offer from Google?
If you're happy that the numbers proposed will be enough to cover the basics, then the next step is to do research into the company's current financial performance.
If they're a public company, it's easy: all of that information is freely available via quarterly SEC filings. Look at it like an investor-- no, seriously, for any company, pretend you are a venture capitalist who is looking to put money down on this company. You're putting in something that is even more valuable, which is your time. You can always make more money but you can't get more time. So, learn to read a balance sheet, and ask yourself:
If they're public, the stock price could also be a good indicator. If the stock's been trending downwards for the last few years, you might want to stay away-- it means investors are losing faith in the company. Note, however, that there are other conditions to consider: almost every company was down during the 2008 financial crisis.
What if they're private? It becomes much harder, but there are still ways to get a picture:
Sometimes companies can be extremely private, and not have any of the above information publicly accessible. In that case, the advice is to look for the subtle things during your visit-- are there free foods/drinks? Do they have 401k matching? Do people at the office look motivated and content? These clues might be helpful in painting the full picture.