Factors affecting candidate recruitment and employee satisfaction, public draft v1

Employees in tech fields can often choose among a number of potential employers, so it is incumbent on those employers to understand the reasons an employee may choose one company over another and create environments optimized to attract the staff to meet their needs.1

Most people might prefer to skip ahead to the section on emotional and intellectual fulfillment, and the value of a shared sense of mission and individual autonomy to meet goals.

Building quality teams starts with a shared mission and the autonomy to achieve it.

Building quality teams starts with a shared mission and the autonomy to achieve it.

Geography or immigration constraints

A person who can move for better or different work will have a broader variety of choices, and have the opportunity to make different choices than a person who is fixed to a limited geography. It might not matter how much another job pays or what emotional fulfillment it offers if a person can’t work remotely or move to meet the geographic constraints for the job. The same goes for immigration issues, which are even more stressful and constraining.

The value of remote work can be seen when candidates leave high paying jobs at geographically constrained companies for lower paying jobs at remote-friendly companies. Remote work was so important to one exceptional engineer I worked with recently that he was willing to leave a Silicon Valley-constrained job earning approximately $500,000 in total compensation for a remote-friendly role at less than half that total comp.2

Financial compensation

As with geographic constraints, employees and candidates have financial needs that must be met. A candidate facing financial pressure will definitely be thinking about how he or she can earn more, and a candidate who sees others doing comparable work for more money elsewhere will likely consider jumping. And as more and more companies support remote work, the regional differences in salaries are starting to level out for top-tier engineers.

However, candidates do not necessarily prefer the employer that offers the highest financial compensation. Compensation above whatever amount the candidate thinks they require is appreciated, but most candidates will strongly consider other factors. High pay can make up for a bad work environment for some people, but not all. A growing number of candidates expect their job to provide emotional and intellectual fulfillment in addition to their financial compensation, and many will trade financial compensation for greater non-financial satisfaction.

Emotional and intellectual fulfillment

A majority of candidates are now asking questions about work-life balance. Today’s candidates are demanding time for family and other pursuits outside the office. However, they’re also often looking for roles that provide non-monetary fulfilment during their work hours.

Nobody chooses teaching because of the money and fame. Software engineers are increasingly choosing roles they find “interesting,” at companies they can be proud of. Most employees are demanding inclusive, pro-climate workplaces and pushing back against participation in military contracts, surveillance, aggressive policing, and totalitarianism.

Those political concerns are real, but focusing on the work itself: candidates are also asking questions about what they can learn in a new role, how a company communicates, and other intangible details that affect the quality of the work environment.

All of this adds up to what I describe as emotional and intellectual fulfillment, but there are more actionable details that every company must focus on to be able to attract and retain the quality engineering talent it needs: shared mission, individual and team autonomy.

Shared mission

Every employee needs to know what they’re expected to do, and how their work contributes to the larger goals of the company.

What a company or division of the company says about itself is important, but the shared mission isn’t the company motto. The mission is revealed and reinforced with the decisions made throughout the organization regarding everything from the work it prioritizes, the people it hires, and where it allocates budget. It’s revealed in the reasoning and explanation given for those decisions. The shared mission is the sum and totality of those decisions and their explanation, and it evolves with each new decision.

Mission isn’t what you say it is, it’s what you do and demonstrate to your employees through prioritizing, budgeting, and in so many other decisions.

Mission isn’t what you say it is, it’s what you do and demonstrate to your employees through prioritizing, budgeting, and in so many other decisions.

The shared mission is the general direction that employees need to focus and align their efforts, and it’s tested most when companies have to make hard choices. How do you handle projects that aren’t meeting expectations? Where do you cut when budgets get tight? The team needs to understand how decisions get made and what priorities drive them, and they need to see those priorities applied consistently.


Knowledge work3 such as software engineering depends on individual employees figuring out how to solve problems independently. The scale and scope of decisions varies, but decisions of all sizes need to be made quickly and effectively for projects to move forward. It is a truism that if the manager could do everything him or herself, then there’d be no reason to employee individual contributors, so it’s equally critical that the decision-making structure in an organization give each engineer room to make decisions independently.

Dropbox’s James Cowling wrote a post on the importance of distributing the freedom to make small mistakes that should be required reading (along with this one of his), but I will acknowledge this paradox: the person closest to the problem is best positioned to understand the details, but the manager likely has broader context that is critical to the problem.

Some organizations attempt to resolve that paradox through micromanagement, others through improved communication and understanding that optimal decisions are best approached through collaborative (and hopefully rapid) iteration, rather than hierarchical processes.

However, one condition here deserves special recognition: generally the person making the decision should suffer its consequences. Decisions are easy and cheap to make, but implementing them can be costly and frustrating. However you structure your teams, make sure you give those teams the authority to make the decisions they need to meet the SLOs and SLAs they’re expected to meet.

As companies grow, the freedom of a team is often constrained by previous decisions made by other teams. Some of these are easy to spot: interactions between components of a service need to be consistent and predictable. Successful companies identify those interactions and create contracts around them to specify the responsibilities between teams in terms of SLOs and SLAs.

There are also more subtle decisions that emerge as constraints over time, such as technology choices within teams. If teams are all expected to use a given build system, then successful companies will turn that into a service with a team to ensure its correct operation within defined SLOs and SLAs. The same might be said of database (for environments not using cloud-provided databases like RDS or DynamoDB). If it’s not important enough for your company to turn it into a service and build a team around it, then it’s not important enough to force that decision onto all teams universally.

Autonomy is especially important at the start of a new project, and when onboarding experienced engineers. These are opportunities to evaluate prior constraints both to avoid prior mistakes and look for improvement. New engineers of all experience levels are well positioned to ask questions about prior decisions that might point to opportunities for improvement. I don’t mean to suggest that companies must throw out everything with every new project or new hire, but effective teams and companies will find a balance that allows ongoing improvement.

Contrary views on motivation

The views I present here are certainly not universally accepted. There was a time when working at a big-name company was reward enough. And in many of those companies, employees were expected to do what they were told, and do it without question.

Another author might be more understanding about companies and managers that aren’t concerned about the motivation and autonomy of their employees, but this is my answer to that.

Another author might be more understanding about companies and managers that aren’t concerned about the motivation and autonomy of their employees, but this is my answer to that.

Companies that refuse to build a culture that includes mission-driven motivation and gives employees autonomy to contribute to that mission risk developing a culture where employees spend more time focusing on what they might get in trouble for than what they can do to advance the company’s goals.

This top-down approach can likely still be found in some companies and in some regions, and it’s likely more true in places the working population feels their opportunities for other work (or other work that provides similar monetary compensation) are limited. However, the growth of highly productive (and highly paid) remote work within engineering fields is reducing the barriers for these geographically constrained populations to find more rewarding jobs.

Those companies that refuse to build company culture that provides sufficient non-monetary rewards and motivation will likely find themselves increasingly under pressure from those that do.

  1. I should admit that my understanding here comes from my years of recruiting and building teams, not formal study or testing, or even much review of existing literature on the matter. Take this for what it is, you have been warned. [return]
  2. I am acutely aware that these numbers are outrageous for most Americans (heck, most anybody). I’ve really struggled to write this post because of that. I’m still struggling with what I learned from The Scarlet E, the outstanding reporting from WNYC’s On the Media on housing problems and especially evictions across America.

    A point I’m trying to make here is that companies making outrageous profits might be able to afford to pay employees outrageous salaries, but employees are increasingly willing to trade those salaries for non-monetary compensation so they can work for a company and on projects they’re proud of. In some cases, employees are protesting to force their employers to forego profits that might be earned in ways that the employees aren’t comfortable with.

  3. I’m certain this is true for lots of fields beyond those I’m addressing here. My brief summer experience as a mason’s mate during college suggests the same points could be made about construction, for example. [return]