It’s always been hard to hire engineers, but it’s only gotten harder in recent months. Read any publication that cares about business, from the NYT to the Wall Street Journal, and you’ll see a ton of hand wringing about The Quittening, and the accompanying talent shortage. An equal amount of ink has been spilled about how red-hot the hiring market is. It’s a seller’s market for talent. This represents a huge potential opportunity for engineers of all stripes. Many engineers could pick up a five figure raise by switching companies right now. In spite of that, it doesn’t seem like many engineers are choosing to make the jump. Why is that?

I’ve spent about a decade as an electrical engineer. I’ve also spent the last four months building and running a job board for a very specific subset of engineers. (If you happen to be an RTL or FPGA engineer, and you’re looking for a new job, please check us out at!) That’s given me some perspective on what engineers want from their careers and their work. The more I think about it, you need to offer engineers some combination of these three things to pique their interest:

  1. Cool stuff to work on.
  2. Smart people to work with.
  3. Some degree of repeatability in work environment.

Without those, getting an engineer to join your company is gonna be a hard sell.

What Engineers Care About

If asked to oversimplify what engineers care about, I would pick three things:

  • Technology
  • Intellection
  • Stability

You can draw a straight line from each of these values to things engineers want in their working environment:

  • Technology \(\rightarrow\) Cool Stuff to Work On
  • Intellection \(\rightarrow\) Smart People to Work With
  • Certainty \(\rightarrow\) Repeatability in Work Environment

Cool Stuff

Every engineer is at least a little bit techno-utopian. There’s a reason that engineers love Star Trek - they’d love to see a world where the mundane challenges of living are abolished by godlike technological power. Engineers tend to adore the raw capabilities that technology unlocks. We also like to increase that capability, when we are able to do so. The techno-utopian streak endemic to most engineers naturally draws them to work on stuff they think is cool.

The Open Source Software movement is a great poster child for this. People have spent decades building software that they need, just because they think it’s cool. They certainly aren’t getting paid for it, and that’s turning out to be more and more problematic as FOSS becomes a cornerstone of critical internet infrastructure. I’ll point you to Apenwarr’s lovely recent blog post for a better treatise on that. The point is: the main point of people working on FOSS isn’t generally that it makes them money. They do it because they think it’s cool!

I hate to say it, but if anyone understands people’s innate drive to work on cool stuff, it’s El*n M*sk. (I ain’t speakin’ his name; the dude gets enough press without me helping his SEO.) Nothing says it more clearly than the start of every job description for his rocket company:

[this company] …was founded under the belief that a future where humanity is out exploring the stars is fundamentally more exciting than one where we are not.

Relevant to engineers

(If ya ain’t hip - this comic is from Saturday Morning Breakfast Cereal.)

He’s built companies that work on:

  • satellites
  • spacecraft
  • rockets
  • electric cars
  • self driving vehicles
  • tunnelling equipment

Say what you want about the man himself, but all of those things absolutely qualify as “cool shit”. He knows how to make stuff that engineers want to work on. The cool factor of this is enough to draw many engineers in on that factor alone. How do I know this? It’s as easy as looking at the Glassdoor reviews of what it’s like to work at TSLA or CosmosY. Culturally, they are terrible places to work. You’ll spend 60-80 hours a week meeting a grueling timetable, with a sub-market salary as a reward. I once had a recruiter tell me: “El*n M*sk is one of the easiest people on earth to poach senior leadership out from under.” After eighteen months in the gulag of rocketry/EVs, many managers are ready to cry “Uncle”.

In spite of these truths, people flock to working for TSLA and CosmosY.

Why? Because both of these companies make cool stuff! And making cool stuff is deeply relevant to most engineers.

Data I’ve collected on the workplace bears this out as well. is just about to wrap up our first annual employment survey. (If you hire, recruit, study, or are an FPGA engineer, I’d love to hear from you. Survey closes Jan 15, 2022!) One of the first things that’s jumped out to me in the first pass of the survey results: the number of people who would choose a new job based on “new or different technical challenges”. Over a quarter of our respondents chose this as their primary consideration when seeking a new job. In fact, more respondents chose this over getting a raise; only 20% of respondents would change jobs for money alone. We’ll come back to this data a little later, but for now, I think it’s worth repeating: interesting technical work is more important to more of our survey respondents than a raise.

Smart People

To return to the El*n company example for a bit longer: the companies El*n has started require a ton of smart people, across a ton of disciplines, to get the job done. Here’s a small subset of the engineering problems his companies need to solve:

  • high bandwidth communications to low earth orbit
  • vibration analysis
  • high power battery management and charging
  • telemetry, guidance, and controls,
  • radar and lidar
  • ASIC development

Any one of these disciplines is an intellectually tough nut to crack. Getting good at any one of the these makes you a pretty smart cookie by default.

My experience has shown me that one of the easiest ways to make a smart cookie happy is to put them in a cookie jar with similarly smart cookies.

Engineering is knowledge work. You get paid to know stuff much more frequently than you get paid to do stuff. This naturally attracts people who like to think, discuss their thinking, and review that thinking with other people. Engineers are naturally drawn towards discussion and debate - whether out of a desire for a new viewpoint, or a wish to be proven right, I could not say. I will say, however, that there are few things that make an engineer happy like the approval of a fellow smart person. I can’t think of a happier bunch of engineers than a dozen of them crowded around a lunchroom table, eating sandwiches, and arguing spiritedly about the legal ramifications of some tech adjacent court decision. (Say what you will about the pre-COVID times, but lunchroom chatter was one of the simple pleasures that made a daily commute bearable for me.)

Smart people naturally push each other. They keep asking “why” - sometimes to an annoying degree. It’s an irritant to which the only cure is rigor. Offer an engineer a pack of smart, capable people to work with, and the odds of them jumping on board increase dramatically.


A big part of what engineers contribute to product development organizations is an understanding of the limits of possibility. Engineering expertise gives you a lot of authority when it comes to assigning technical feasibility to a project. People come to you with questions like:

  • “Can we do this?”
  • “How long do you think this would take?”
  • “How challenging is it to do <thing X>?”
  • “How hard would it be to implement <feature Y>?”

This draws many engineers towards a very objective worldview. Perhaps it’s the intellectual grounding in math and other rigorous fields; perhaps it’s the experience of knowing that delivery eventually becomes your responsibility. Whatever the case: engineers really like certainty. Over time, this desire for stability compounds with other normal life events (marriage, mortgage, raising children), and a stable gig becomes something that many engineers begin to cherish.

If you want engineers to join you, you need to give them some repeatibility, or certainty.

Guarantees of that sort are hard to make. As a result, you’ll have to come up with some clever ways to offer this. Here are some ideas for how you can offer and telegraph certainty:

  • Predictable, repeatable revenue. Job seeking is a chore; knowing that you won’t have to start a job search over again in 18 months is a great way to convince engineers to come along for the ride. Making money is one of the easiest ways to keep engineers in the building.
  • Market rate salary compensation. There was a time that engineers were willing to trade years of their lives for the lottery ticket of stock options. I find that, as more companies try this approach, and it becomes more common, more engineers are becoming literate as to the downsides. More bluntly: more people are starting to understand that stock options are frequently worthless. The certainty of a paycheck that clears every month, regardless of company performance, is highly reassuring to the engineering mind.
  • Minimal churn. Nothing makes engineers crankier than whiplashing from one task to another. It diminishes their focus, which diminishes their capability to complete a feature, which diminishes their morale. Shipping stuff is directly related to cool stuff. Nobody is going to think a feature you worked on is cool if it never sees the light of day. That’s just one of the reasons you’ll see a bunch of despondent engineers the day after their project is mothballed by the board. Offering the certainty that their work will see the light of day is a hugely appealing thing to an engineer.
  • Decisionmaking authority. Few things make an engineer feel safer than knowing that a buck stops with them. Free rein to make technical decisions is not something that engineers are offered in many companies. They get very used to hearing a steady drumbeat of “Implement! Implement! Implement!” What’s worse: the one chanting this refrain is frequently a Dilbertian, pointy-haired chump who will happily consign you to misery in pursuit of their next bonus check. If you can relinquish some of this authority to an engineer, you will win their trust.
  • Good management. Managers: things like trust, shielding your team from churn, and delegating decisionmaking authority downwards, are all signs of good management. Engineers notice. The good ones will ask about it.

The data I collected for shows some indicators I associate with higher certainty. About 20% of survey respondents self identified as “Actively interviewing for new jobs”. On the other hand, an equal proportion said, plainly, that they are happy where they are, and not interested in changing jobs at all. The remaining 60% all said that, while not looking, that they would switch jobs if the right offer came to them. This speaks to needing a relatively strong pull to get an engineer to leave a current job. It also suggests that the force of inertia is quite powerful. Something has to be strongly motivating our user base to get up and seek new employment. The certainty of the status quo is a hard thing to overcome.

The State of Jobs Now

I postulate that the average experienced engineer has a pretty good thing going for them, wherever they are.

They are:

  • Making steady money - low to mid six figures for 5-10 years experience is a very normal compensation band (more if you’re in one of those highly paid corners of software engineering like machine learning)
  • Well aware of what’s expected of them in their current gig
  • Not micromanaged, and getting a lot of freedom in their day to day - COVID and the attendant WFH policies have seen to that

All of these combine to make for a pretty cushy gig for many engineers. I have spoken with many folks who are leveraging these realities to work 20-30 hours a week, ditch their previous commute, and still get all of their assigned tasks done. They’re finding their careers much more sustainable - hell, even downright enjoyable - as a result.

Sure, your job is still likely a job. You have deliverables, schedules, budgets, and a boss looking over your shoulder. But the devil you know is almost always better than the devil you don’t. Remember: certainty is something that engineers value. In an established job, the expectations are clear, and the checks are coming in on time. That’s worth a lot to a typical engineer.

Any game theorists in the audience have correctly deduced by now that the Best Alternative To Negotiated Agreement here is: the status quo. Is an extra $10k per year worth learning a new org, a new skillset, a new set of expectations, a new set of coworkers, and a new boss?

For many engineers, the answer is: “No.”

“…but my company ticks all those boxes!”

Some of you are surely complaining to this effect right now, and asking “Why Can’t We Hire People?”

Here are some musings as to why that may be the case, and some suggestions for how to get on a better track.

Understand that Guarantees are Hard to Make

You can’t really prove to an engineer that you can give them things like good management, minimal churn, and decision making authority until they are in the door and on the payroll. Engineers know this instinctively. I’m not implying that you would do something as unethical as lie to an incoming candidate. I’m saying that, as a hiring company, it’s in your best interest to sell the candidate on the perks of coming to work for you. That naturally means accentuating the positives, while leaving the work of finding downsides as an exercise for the reader.

Engineers can smell this. They also have a natural allergy to being sold to. Wherever you can offer them the transparency to allow them to come to their own conclusions, do so! It shows you have enough respect for them to let them decide the kind of shape your company is in, rather than saying “Just take my word for it”.

Let them talk to your employees, ASAP

Speaking of transparency: do everything you can to put your engineers in touch with their prospective team, STAT. You will save everyone a ton of time by doing so. Your candidate will start to get a feel for the smart people they’d be working with. Your team will get a chance to poke and prod their new teammate, and get a feel for their chops and fit.

Also: figure out a way to let your team “backchannel” to the candidate. While interviewing, I’ve almost always tried to find a way to contact an interviewer for an chat outside of the interview loop. This is a great way for me, a candidate, to get an informal, unvarnished view of the internal landscape. Truth travels at the speed of email, lubricated by beer.

Not cool? Play up smarts and stability

Let’s face it: there’s a reasonably good chance that your product is not that cool. Line of business SaaS apps, while helpful products that reliably make money, are neither new nor technologically interesting to most engineers. How can you get technical folks to come along and build them with you, then? You play up the things you can offer them: smart coworkers, and a stable working environment.

Here are some ideas for how to do that:

  • If you’re a strictly B2B company, you work when businesses work. That means “9-5” schedules, most major holidays observed, and almost no weekend pager duty. Mention this to your prospects. A sane workplace with defined starts and ends to the workday is very attractive to a certain kind of engineer - the kind that likes to be home for dinner, and read their children bedtime stories, for example.
  • See earlier comment about chatting with the teammates. Transparency on culture and team is huge.
  • Offer flex work. No, seriously - offer flex work. This means remote work opportunities, and flexible start/stop times. Every candidate you will speak to has just spent two years productively contributing to a team in a mostly remote capacity. Demanding their hindquarters be in a chair that you specify, at a time and place of your choosing, verges on insulting to the average tech worker these days.

A broader point here is that you can afford to be honest about what it is that you do offer to a candidate. Don’t pitch the “hustle and bustle”, “we only hire the best” marketing shpiel you send to your customers. Pitch them the truth: that you want to do good work, sustainably, for as long as you can - ideally with them on your team.

⤧  Next post More notes on writing web scrapers ⤧  Previous post Growing Your Mailing List By Being Helpful