When you interview with a company, they have a process (often referred to as a rubric) to evaluate your technical knowledge and fit for a position and level. Most companies include behavioral and cultural assessments in the evaluation process so interviewers can share their thoughts about whether they think a candidate will be a good or a bad fit.
When you are considering a position with a new company, you should have similar questions, and you need similar tools to help you determine if the company is a fit for you. This article discusses ways to evaluate and rank companies to help you find the good and avoid the bad.
How Do You Evaluate a Company?
Before you can determine if a company is a fit, you need to identify what criteria determine if a company is good or bad for you. Some of the factors you might use to assess a company are:
- Work Culture
- Total Compensation (TC)
- Leadership
- Reputation
- Product and Mission
- Tech Stack
- Lifecycle and Financials
- Return to Office (RTO) Policy and Work Hours
There may be other factors to evaluate, but this is a good starting point to develop a rubric for evaluating potential (and current) employers.
Work Culture
As job seekers, we probably care most about how a company will treat us if we become an employee. Fortunately, there are a number of sites that provide data to help us make a determination:
- Glassdoor
The original review site for companies. Glassdoor is better than most sites because it allows you to filter reviews by job function (in our case engineering) and office location, allowing you to better understand what others in your area with similar jobs think about their employer. - Blind
A sometimes controversial, anonymous review site. The reviews here can be brutal, but they are often more honest than you’ll find elsewhere. If you want to know whether a company has dark secrets, this is a great place to look. - Comparably
Similar to Glassdoor, it provides extensive data on company culture. - Indeed
Primarily a job listing and search site, but it has data on employee satisfaction, too.
Each of these sites gathers reviews from employees and produces a score of 1–5, indicating what employees think of the company. By aggregating the scores across sites, you can produce a very useful “metascore” to compare and rank companies on work culture.
Tips:
- Look at the score trend to see whether the company is improving or getting worse. If scores are getting worse, join at your own risk. If they are improving, the company may be aware of the problem and be working to improve its culture.
- In addition to the overall score, it’s helpful to read individual reviews on the sites above to understand why an employee gave the review they did. Their reason for disliking the company might be a positive to you (or vice versa.)
- These tools often don’t work well for small or young companies. If a company has very few reviews (or none), there is not enough data to make the ratings useful.
Total Compensation (TC)
Compensation is always a factor in determining whether or not to accept an offer, and it’s useful to gather information up front to ensure it’s worth navigating the potentially long interview process. While many sites and companies discuss salary, TC refers to all types of compensation and is the number that matters. TC includes base, bonuses, equity (Stock, Options, etc.), and any other performance incentives that the company might offer.
The following sites are helpful in determining what companies pay for different positions:
- Levels.fyi
Levels.fyi is great for exploring total compensation ranges for different technical levels at different companies. Levels.fyi is the only site I’m aware of that allows you to compare company levels and compensation in a single view.
- Blind
As mentioned above, blind reviews are “colorful”, but there is a lot of useful total compensation data to be found there. - Glassdoor
Glassdoor provides “Total Pay” which is a synonym for TC, which can also be filtered to job title. - Salary.com
Salary.com is not as user-friendly as some of the tools above and appears to lack data on L6 and higher software engineering positions. The best utility of Salary.com is to research executive compensation for public companies.
Tips:
- If a recruiter or representative of a company avoids providing total comp ranges for a position up front, it’s a major red flag. In some states, it’s even illegal not to disclose pay ranges.
- Make sure you compare companies based on the “market” where you are likely to work. If you are fully remote, you’ll likely find that total compensation will be lower than in hot markets like the San Francisco Bay Area or New York City. This is even more true now that more companies are requiring return to office (RTO).
- How a company compensates its employees does not necessarily correlate to whether it is a good or bad company to work for. Many small startups cannot pay what large, established companies can, and that should generally not be held against them.
- Paying below market can be OK if this policy extends to leadership and executive management and if it will improve for everyone if the company’s financials improve. It’s hard to get this information for private companies. Still, for public companies, you can find the compensation of executive leadership (usually senior leadership like CEO, COO, etc.) as they must disclose it by law. This can be used to come up with a ratio of CEO pay to average employee pay. This can provide very useful insight into how a company values individual employees relative to executives.
Leadership
Though we see examples of engineers fixing companies from the inside in TV and movies, in real life, individual contributors generally cannot change company culture and policies. Engineers, especially at higher levels, can have an enormous impact, but culture is the product of executive leadership, the middle management they hire, and the values they hold and promote. For this reason, employee satisfaction with the leadership of a company is critical to determining the quality of the culture.
- Comparably
Comparably provides more information on overall culture than any other tool. You can see that CEO approval percentages are aggregated by department, and culture is measured on facets like overall happiness and diversity, making it easy to create targeted scoring based on the factors that are most important to you.
- Glassdoor
Glassdoor provides an excellent “approval rating” tool that you can filter by job title and location, making it the best tool for targeting engineering sentiment toward top leadership.
- Blind
As usual, Blind is a useful tool to identify when the “walk” of a company’s leadership doesn’t match the “talk” and if that trend is changing. Go here to find examples of employees asking whether the culture is authentic and how well the company is living up to its ideals.
Tips:
- Look for statements from company leadership about the culture they are trying to create. Look for feedback on Blind and other sites to determine how close the company is coming to making the culture real.
Reputation
So far, we’ve talked about how a company behaves on the inside, how it treats its own employees, and how employees feel about how they are treated and compensated. Another important measure of a business, and often the only one that matters to those outside the company, is how the company behaves toward customers, partners, and the general public. There are several tools we can use to help us determine how the world views a company and its products:
- bbb.org
The Better Business Bureau (BBB) accepts complaints from consumers and businesses about businesses and tracks businesses’ responses to those complaints. The BBB creates a rating based on how businesses respond to these complaints, and a low rating can represent a disregard for customers or the general public.
- yelp.com and google.com
Though most of us use Yelp and Google reviews to find goods and service providers, companies sometimes have reviews on these sites and sometimes those reviews are for a particular office. Looking up a potential employer on Yelp and Google can provide additional data on what the public thinks of how a business operates.
Tips:
- Public reputation must be established over time, so young companies may not have much data.
Product and Mission
Businesses spend a lot of energy selling and marketing what they are producing, and you can expect those sales and marketing messages to be overwhelmingly positive. When joining a company, it is necessary to know something about the product or service the company provides as interviewers are likely to test your knowledge and interest. Beyond products and services, it is also helpful to understand the company’s mission. Sometimes the mission tells you what the company wants to accomplish, especially if the product offering is young and still being built. Since you probably need to know something about the product to get hired, you should form an opinion about whether the product is compelling and if the mission makes sense and is motivating to you.
- gartner.com + google.com
Gartner is an established market analysis firm and is well-known for its “magic quadrant” comparisons. You generally need to pay to get access to this information but in many cases, companies will publish favorable results and you can find them using a Google image search.
Tips:
- Ask questions about how leadership, product management, and engineering work together to scope and build products. Ask who owns the backlog for the team(s) you might join, and how new features are identified and prioritized. Make sure you are comfortable with the answers.
- It may not be important for a company you are evaluating to be in a market leadership position. They may be hiring you to help improve their product and ranking. What’s more important is that you can understand the product, why it exists, and how it provides value. At best, if you think the main product offerings or overall mission of a company don’t make sense to you, it may be a sign that you aren’t a good fit for the company. At worst, the lack of clear value or results can indicate a company is committing fraud.
Tech Stack
For many engineers, the tech stack of a company is an important consideration because we want to practice doing things with tools that are in demand and considered to be the best for their intended purpose. There are many opinions about what constitutes a “good” versus “bad” tech stack, but you should work to form an opinion about the tools you do and do not want to work with and why.
- stackshare.io
Stackshare provides great insight into the technology stacks used in many companies. This is often the best place to start when you want to get an overview of what a company is using internally.
Tips:
- Ask questions about the stacks that are in use at the company when you talk to technical people during the interview process. You might mention what you found on Stackshare, and ask if what is listed there is correct and current.
- Ask questions about the particular team you might be joining. In many cases, teams may use different tools and stacks than the broader company and it’s important to identify when and if that’s the case.
- Put on your system design interview hat and determine if the stack makes sense and is best practice based on what they are building. If a team is migrating from one stack to another, try to form an opinion about whether the change is worthwhile. Overengineering is a common problem, and companies that do this habitually are often not good companies to work for.
Lifecycle and Financials
The lifecycle stage of a company often tells you a lot about the challenges a company might be facing. It also tells you a lot about how much the equity part of your compensation is worth and the probability of you seeing any of that value (and when).
- Crunchbase
Crunchbase collects the following useful data about companies:
– Funding stage (seed, series A, B, public, etc.)
– Total Funding Amount
– Investors
– Executive Leadership
Tips:
- If you are joining a company at the angel/seed stage, there is a very good chance the company won’t go public soon if ever. If you join a seed-stage company, understand that your equity compensation is like a scratch-off lottery ticket that likely won’t pay off. Make sure you don’t need the equity part of the compensation or that you believe in the mission so much that the equity doesn’t matter — this is a luxury very few of us have.
- At each funding stage, the probability of liquidity increases, and the time to liquidity decreases. A Series A startup may be ten or more years from IPO and have a probability of successful IPO or acquisition of around 5%. A Series D company may be only months to a couple of years from IPO and have a probability of IPO or acquisition over 80%.
- Public companies generally issue RSUs (Restricted Stock Units) that are liquid as soon as they vest, but vesting generally begins a year or more from the hire date. While RSUs have built-in liquidity, the bad news is immediately after IPO. Companies can see aggressive stock price growth followed by steep declines or crashes. Looking at competitors in the same industry can be helpful in determining if a company is at risk of following this trajectory. One of the worst things that can happen to you is to get equity compensation that is granted at a high per-share price and vests at a much lower price.
Return to Office (RTO) Policy and Work Hours
Now that we’ve come to terms with how to safely live with COVID, the drumbeat of RTO is growing louder and more widespread. I have argued since the pandemic began that remote work was a temporary necessity but that most companies would return to in-office work as soon as possible. Executives like to see people in the office, and there are real benefits to in-person work in creative fields like software engineering. In the months to come, we will likely see promotions and raises go primarily to in-office workers, with many remote staff being passed over or even let go.
Whether you agree with this assessment, you must determine whether demanding in-office presence and minimum work hours makes a company good or bad for you.
Tips:
- Ask your recruiter what the in-office requirements are for the position and whether management generally has expressed a preference for more time in the office.
- Ask about on-call schedules and how many hours a week the position requires. Ask how many of those hours need to be worked in-office.
- Look for perks like complimentary breakfast and dinner, as these can be indications that you may be expected to be in the office before breakfast and stay until after dinner on a regular basis. Make sure you’re OK with all of these requirements.
A Sample Scoring Algorithm
Now that we’ve established some criteria, we need to come up with a scoring algorithm that will tell us quantitatively whether a company is “bad” or “good” for us and how it ranks relative to others we might be considering. Let’s walk through the criteria above and define some score ranges to help us make our assessment.
Work Culture
I’ve used this metric in my own job searches and have come up with a determination about what specific metascore ranges say about a company:
- Greater than 4
The company is “good” with no obvious culture issues. The company is aware that maintaining a reputation for good work culture matters, and they actively manage that reputation. - Greater than 3.5 to 4
The company has some issues, and there is a somewhat higher chance that you may encounter pockets of poor culture and/or leadership. - Greater than 3 to 3.5
The company has major culture issues that become worse as scores go lower in this range. These are generally companies to avoid, but with additional research, you might find safe groups or managers. - Less than 3
These companies have serious, systemic, cultural or operational issues. Avoid if you can, or at least understand why employees are so unhappy.
Total Compensation (TC)
If you live in an expensive labor market like I do, the total compensation ranges are higher than in much of the country. For L5/Senior Software Engineers in the San Francisco Bay Area, the total compensation would generally range from $200k to $400k. Let’s say that compensation scores break down more or less like this:
- 5 — $350–$400k
- 4 — $300–$350k
- 3 — $250–$300k
- 2 — $200–$250k
- 1 — Less than $200k
Remember — this is Total Compensation, not Salary!
Leadership
As we’ve seen, top companies can have leadership approval rates of 80% or higher. Let’s measure leadership approval like this:
- 5 — 85% approval or higher
- 4 — 75–85% approval
- 3 — 65–75% approval
- 2 — 50–65% approval
- 1 — less than 50% approval
Reputation
Since bbb.org, Yelp, and Google all have a 1–5 scoring system, we can simply aggregate the numbers to come up with a reputation metascore. We can borrow the same ranges from Work Culture and use them here.
Product and Mission
This is largely subjective, so you will need to score the company based on how you feel about its product or service offering and overall mission. Here are qualitative guidelines we can use for scoring (we will use APM and Observability tools for our examples):
- 5 — The product value proposition makes sense, is high-quality, and has an established brand name and user base. Examples might include Dynatrace and Datadog.
- 4 — The product value proposition makes sense and is a competitive offering, but there is strong competition, and the future is unclear. An example might be Sumo Logic.
- 3 — The product value proposition is somewhat unclear (to you), and there is substantial competition, and the company is less competitive than its rivals. An example might be ManageEngine.
- 2 — The product value proposition is unclear, the product is unfinished, or the company has a product that is losing or not gaining market share. An example might be an APM company you’ve never heard of with poor product information on its website and no known customers.
- 1 — You don’t understand what the product does and doubt whether the product is fully formed or is already known to be poor in the market. An example might be an APM company you have never heard of that has a vague website that does not talk in concrete terms about what their product does.
Tech Stack
What constitutes a good tech stack will likely be different for different engineers and will depend on your experience and what type of software and services a company provides. Here is an example of how you might approach evaluating the tech stack:
- 5 — The stack is one that you either know very well or really want to learn, and adoption of the stack is growing. The stack seems appropriate for the business and transaction volume.
- 4 — The stack is one that you know or want to learn, but some components are not desirable or a good fit for how the company is using them.
- 3 — The stack is one that you don’t know and don’t want to learn, but it seems like a fair choice given the needs of the business. Alternatively, the stack could be one that you like, but it’s not a good fit for the business or the transaction volume the business is seeing or expects to see.
- 2 — The stack is one you actively have avoided, and you feel that working with it will make you less marketable or will otherwise hurt your proficiency and marketability in the future.
- 1 — The stack is one you would never want to work with or one that is no longer being used for new development.
Lifecycle and Financials
This is a personal choice, but there are some rules of thumb we can use for this exercise. Let’s say we are a person looking to maximize compensation over the next five years to pay off student loans or to save up to buy a house.
- 5 — The company is public, growing rapidly, and pays toward the top of the range for software engineers in the local market. The company provides quarterly equity vesting from day one and substantial performance bonuses that have been at or above target for the past two years.
- 4 — The company is public but growing slowly or does not pay as well as other options in the local market. Equity vesting has a standard one-year cliff, and bonuses have been at or slightly below target for the past year.
- 3 — The company is not yet public, but its last round of funding was Series D, and most people you speak with think it will IPO in the next one to three years.
- 2 — The company is not public, and it just closed Series A funding. The product has less than 100 customers who seem to like the offering, but there is no talk of IPO, so equity may not have liquidity for several years if there is a liquidity event.
- 1 — The company has gotten seed or angel investment and is working to build an initial version of their product and find market fit.
Return to Office (RTO) Policy and Work Hours
As mentioned above, many companies will be pursuing RTO aggressively over the coming year. Companies also have varying philosophies about how many hours they want to see engineers working per week. Here are some ways we can classify different approaches:
- 5 — The company has a hybrid work schedule of 2–3 days in the office per week but lets teams self-manage which days they choose based on the workload of the team. In cases where on-site work is not clearly beneficial, they allow fully remote positions. The company targets 40 hours per week and works with employees if they routinely put in more hours than that.
- 4 — The company has a hybrid work schedule of 2–3 days in the office per week and mandates what days those are. The company states that 50 hours is acceptable but will step in if the hours go above that threshold routinely.
- 3 — The company requires in-office work four days a week, with work-from-home on a specific day. The day can be changed if employees justify it to their manager. The company states that 50 hours a week is the minimum and places no upper limit on hours worked, stating employees must work the hours necessary to complete their work.
- 2 — The company requires full-time in-office work with no exceptions. It is stated that employees often arrive early and work into the evening. The company provides a cafeteria (not subsidized) to allow employees to have breakfast and dinner there. There is no statement of the maximum number of hours, but it is mentioned that employees often come in on weekends to meet deadlines.
- 1 — The company requires full-time in-office work with no exceptions and has indicated that remote employees will be dismissed at the end of the month if they have not returned to the office. The offices are in the city center, and parking is expensive, but no parking subsidies are provided, nor are meals provided onsite. There are no stated limits to hours worked, and all team members must be on call when not at work.
Applying the Algorithm
Now that we have an algorithm, let’s apply it to a few well-known companies. To keep the exercise short, let’s choose just three:
- Sumo Logic
- Atlassian
Tips:
- If the company doesn’t have a score on a particular site, use the average of the sites that do provide a score
- If the company has no score for any sites for a given criterion, leave it out of the average (Google Sheets AVERAGEIF() helps here)
In this small group of three, with equal weight given to each criterion, it appears that Atlassian tops the list, which is a little bit of a surprise. Factors that impacted this:
- Google had some pretty negative bbb.org reviews, which hurt its overall reputation score more than expected.
- Sumo Logic has gone private, which has hurt its ranking in two key areas: “Culture” and “Lifecycle and Financials.”
- Atlassian appears to have very flexible RTO policies, making it score better in this regard.
While this is a small exercise, it demonstrates how quantitative rankings help us and how doing the research can reveal unexpected details about a company that might impact our decision to pursue a position there. This exercise also did not add weighting to the criteria, which you would probably want to do to tune your algorithm.
How Engineers Can Identify Good (and Avoid Bad) Companies was originally published in Better Programming on Medium, where people are continuing the conversation by highlighting and responding to this story.