Programming Blog

Jeremy Morgan

Mostly Coherent Ramblings of a Silicon Forest Software Developer

The Great Unicorn Hunt

Author: Jeremy Morgan

When talking with people in the Portland, Oregon tech scene I hear the same thing all the time. “We are always looking for developers. We are hiring and can’t find anyone. If you know anyone looking….”. Folks claim there are more jobs than developers in this town, but is that entirely accurate? Is it as bad as it seems?

The Portland Tech Scene

First I should probably tell you about my impressions of the Portland tech scene. It’s not representative of the industry in general, nor is it even applicable to other parts of the country but merely my observation of what’s happening here in Portland, Oregon.

"Portland Oregon Tech Scene"

  • We have a lot of talent here.
  • Our startup scene is exploding.
  • Our “Old school” businesses are thriving.
  • Companies are migrating here.
  • Innovation is happening here.
  • Both open source and proprietary system developers are in demand.

All of these points are hard to argue and they point to a potential talent shortage, I don’t argue that there is one. We’re clearly in the middle of a bubble as well, like most of the world. But is it as bad as it seems? I don’t think so.

I would argue that the talent shortage in Portland is not nearly what some people would make it out to be, and suspect it’s like that in other parts of the country and even the world.

Why can’t you find good talent?

If you ask most people around here why they can’t find good talent, the answers are generally the same, depending on who you ask. The most common one of course is:

There simply aren’t enough developers in Portland.

Which is not entirely true. There are lots of developers in Portland, and many of them are out of work, or freelancing. Here are some other more realistic reasons companies aren’t finding developers:

  1. They aren’t offering enough money (not always the company’s fault)
  2. The company environment sucks. (Not the recruiter’s fault)
  3. You have an idiot making the hiring decisions. (The company’s fault)

Out of all of these possibilities, which one do you think happens the most? I’m going to guess it’s number 3, and I’ll explain why.

I won’t go into a lot of detail about the first two because there are companies that can’t afford to offer programmers six figure salaries, so they pay what they can and attract whatever talent they can. There’s not a lot they can do about it.

Company environment is another thing that’s not something a recruiter or even manager can control much of the time, so they’re stuck. If your environment sucks, you have to live with the fact that much of your talent will decline to work for you in this economy.

Who is making the hiring decision?

This is a big one, because it’s something a company can control for very little cost. Many companies have what I call “Unicorn Hunters” and they’re people who simply have unrealistic expectations about the person they’re going to hire. They’re looking for someone they are never going to find. Recruiters spend weeks or months looking for people, and spend enormous amounts of time and money looking for a “perfect candidate” while their competition is adding features to their website or product and leaving them in the dust.

Who makes the hiring decisions will greatly influence the results you get in any company, in any economy. But right now in Portland Oregon (and likely anywhere in the tech industry) this person holds the ultimate power over the bottom line. And this person could very well be an idiot, which is why you can’t find the talent you’re looking for.

The types of unicorn hunters

Here is a brief list of the type of people you shouldn’t have hiring your developers. They shouldn’t be making the final decision and their input probably shouldn’t even be considered.

1. The Brogrammer Manager

Generally a manager who has never developed anything, or dabbled just enough that they think they know something about it. They are in the industry because “there’s money there”. This manager only hires cool, fashionable, sports loving, everyday average people like themselves. Has a hidden (or not so hidden) contempt for “nerds” and social outcasts. This manager will disregard a candidate’s technical skill set, usually because they don’t understand it anyway. Dismisses skilled candidates by saying they have poor social skills or won’t fit in.

2. Big Fish in a Small Pond

This one is the top coder in the company or team who must stay that way. Anyone that could possibly steal their thunder or show them up in some way are shown the door quickly. They will usually come up with some silly tricks and puzzles to make the candidate seem aloof in front of the decision maker. Happens frequently with smaller companies and teams because they have convinced non technical management how irreplaceable they are.

The only way to truly overcome this one is by having them demonstrate things they’ve built, and see how it compares with what your company is working on.

3. The Bullet Point Seeker

This is the one who has a long list of bullet points, and every single one must be met. They have a long list of technologies that may not even be related, or used in your company. It doesn’t matter that their list is so long no reasonable programmer could ever master them all in 4 careers, they just need every one checked off. These managers generally have a pedestrian knowledge of development in general and couldn’t tell you a single thing about any of their bullet points.

4. The Bigot

This requires little explanation. These are the folks who still think talent and intelligence favor a certain race or gender. They’ll spend the entire interview looking for a reason to disqualify a candidate that doesn’t fit their profile, and veto them completely. This is just one of the reasons you should work to purge this person from your organization.

5. The Hipster

This is the manager who requires the developer to be just like them. If you don’t have the tight flannel, skinny jeans, black rimmed glasses and taste in obscure music you won’t be hired. This is very similar to the brogrammer manager, because they’re just trying to find someone that mirrors themselves rather than looking at actual talent or ability. Certain companies that value their image will hire in this way, but should be aware of the fact that the quality and quantity of work may suffer for it. As long as you’re willing to make that trade off, you’re ok.

6. The Gatekeeper

All of the managers fit into this list, but there are some people who really take joy in becoming a gatekeeper. They pride themselves on how tough of an interviewer they are, and take joy in rejecting people. These people are a danger to your organization, and they’re easy to spot. Did they want high fives after showing someone the door? Are they overjoyed at stumping people, or making disrespectful remarks about the person after they left? These are signs of a low self esteem and if someone bases their self worth on rejecting others, they shouldn’t be allowed into the process because they are rejecting good candidates and harming your company.


This post just scratches the surface of some of the problems companies face in getting good talent. As I said, I do believe there is a talent shortage in development but I don’t think it’s quite as bad as some make it out to be. The important things I’ve learned in the last 10+ years of interviewing and hiring is this:

  • The best candidates are passionate, and it’s the first thing you should look for.
  • Years of experience and bullet points are not as important as you think they are.
  • Education level is not as important as you think it is.
  • Talent and intelligence are not limited to a single race or gender.
  • Personality fit is very important, but should not be the only criteria.
  • Trivia questions and puzzles are ineffective.
  • Make them show you instead of tell you.
  • You are going to have bad hires. If it becomes a trend, re-evaluate what you’re doing.

This is a small summary of my experience, but one of the best books I’ve ever read on hiring is a quick read, and well worth it. It’s called Smart and Gets Things Done: Joel Spolsky’s Concise Guide to Finding the Best Technical Talent. If you’re reading this blog and you’re any kind of a programmer you already know who Joel Spolsky is. He covers some great theories in this book and will open your eyes and get you to look into your hiring process a bit more.

Also, if you live in the Portland, Oregon area (or want to move here) and you’re looking to change careers, there is one company who I recommend you talk to. They are IT Motives, and they have some of the best gigs in town, whether it’s contract or full time. It’s run by a group of people I know personally who have passion and integrity that can’t be matched. Check out some of their open positions.

Do you like articles like this?

I’m constantly hacking on stuff and writing about happenings in the programmer world. You can subscribe to my feed here, or you can get the hacker newsletter 100% spam free!

You can also follow my projects on GitHub: