One month ago I was on a panel at Grace Hopper, “Startups, Big Companies, Silicon Valley, Government Contractor — What’s the right career path for you?”. I was speaking mostly to software engineers who were just entering their career post-college or transitioning from their first job. I was on the panel with four other talented software engineers from a range of job experiences, Sha-Mayn Teh (Teachers Pay Teachers), Jennifer Liu (Quizlet), Neena Parikh (Benchling), and Stephanie deWet (Pinterest). Here are some of the thoughts I personally shared with the room on how to decide on what kind of company to work for.
1. Forget company size or reputation. The team is everything!
I had a friend who was trying to found a startup reviewing companies from the perspective of current and past employees. It failed and failed fast, and for very good reasons. You can work for a large company with a good reputation, but you won’t be happy there unless you’re happy on your team. Whether you are working for a small company or a large company, finding the right team is of utmost importance.
2. Process provides sanity.
One of the ways to have a good team dynamic is to have good processes. You may be interested in a particular tech stack, but don’t overlook asking about code reviews, IPM’s, and retros. As consultants, one of the ways Carbon Five enacts long-lasting change is not just through code, but through process. We work with all types of companies, from startups to large enterprise companies. With startups, we often lay down the foundational processes. With enterprise companies, we sometimes introduce new ways of accomplishing projects.
Processes take the heat off of the people and put trust in a system. Processes create mechanisms for decision-making. If something goes wrong, you take a look and see if you need to make an adjustment in the process. This provides for greater trust and greater cooperation. This is how some of the most successful teams in the most successful companies work, including, I like to think, ours.
Processes in how the team work are of utmost importance, but also be aware of processes around individual employees, such as assessment reviews and promotions. Defined lists for what makes a “junior”, “mid-level”, “senior”, “manager”, “tech lead”, etc. allow people to be more easily promoted or ask for a promotion, especially when they are less extroverted or have biases stacked against them. Larger companies are more likely to have these processes in place, but it’s not a given, and small companies can be open to creating them if they’re not already in place. These types of processes are definitely a good signal that the company wants you to stick around and is actively trying to provide an equitable place to work where everyone is give the chance to contribute.
3. Managers are super important.
Managers can make or break a work culture, and they can make or stagnate your career. When interviewing, make sure you have a rapport with your manager. If you’re a software engineer, beware of companies that promote to management based on being the most experienced and technical person on the team. Becoming a manager is a career change. If your potential manager doesn’t have an interest in people and supporting those on their team, then that can have side effects — even if they’re a really nice person. If it seems like the people on the team you’re interviewing with don’t like each other, that’s also a bad sign, and may very well be a management issue. Good teams gel when they have a good manager. Teammates don’t get along when there aren’t good processes in place and management isn’t engaged.
The downside with a very small company is that if you are happy with your team and your manager leaves, there’s nowhere else to go in the company, so hopefully you like your next manager. With large companies, if you don’t feel like your manager is the right fit, you can often transfer internally, but there may or may not be restrictions on that, and if you’re a specialist, then the team you’re on may be the only one you’re interested in.
4. Beware of turnover and burnout cultures.
In small companies, your team may disappear because of a pivot or funding. With large companies, you team may disappear because of a reorganization or a general downturn. Shifts in companies aren’t inherently bad, but they’re good to be aware of. If you’re looking for a stable position and your company is shifting, it may not be the right fit.
Then there are also companies where they haven’t yet figured out how to not burn out their employees. A company that continues to invest in their employees long-term, and ensures that employees are happy, is extremely worthwhile. You want a company that values their employees. A good question to ask when interviewing is how long each person has been there. If you are consistently getting answers of less than a year, dig deeper and try to figure out why. How long have they been around? Are they rapidly expanding? Is there a budget for professional development? Is it a company where people don’t feel like they can level up in their career? Or is it that there’s a systemic difficulty and people burn out quickly?
Also, be wary of any referral from a friend where they “love” working at their current company, but have only worked there for three months. It takes at least six months for the honeymoon period to be over and to get a real sense of how good a company is. I personally became interested in Carbon Five after hearing from a former co-worker of mine, who had been working here for about nine months, and she said she was extremely happy and highly recommended it.
5. Understand the power structure and lay of the land
Who are the most important teams and the most important people in the company you’re looking to work at? If you are working a startup, you may find that the salespeople or the designers have the greatest sway over company trajectory. In larger companies, you may find something similar (sales is usually always important), but larger companies may also have many different power structures within the same field (mobile may be more influential than web, for instance). This is important because you may find a dream job with a dream team, but find that getting traction and resources within the company for your project is a continuing struggle. If you’re not set up to succeed, even a dream job can make you unhappy. This is harder to assess going in, and may in fact change after you get there, but it’s good to be aware of.
Ultimately, all of this advice funnels into having a good work culture where you can be successful. There are lot of different moving parts on how to accomplish this — and none of them are easy to suss out through a one-day interview. These are five vantage points to evaluate a new opportunity.