Starting new technology businesses is even more addictive than watching “Breaking Bad.” I’ve started and sold two companies in the past three years for nice six figure exits. Have I mastered the art of hiring tech workers? No way! I made many mistakes in hiring and like any good entrepreneur looked to improve my skills around hiring. I read the literature on “top grading”, and still always wondered what you do when you don’t have a huge pool of people to choose from. One secret: you can create your own pool of developers if you know where to look (and where not to look).

First, you need to have some source of funding. This won’t work if you are bootstrapping and have zero cash. If your problem is simply “lack of developers,” and not “lack of developers and no money” then you are in a good position.

(I’m working with a well funded stealth startup so if these ideas resonate with you, connect with me at xrdawson@gmail.com; we are looking to add people)

Potential software developers (and unicorns) can be divided into four groups.

Rock stars

These are the most dangerous type of people. I think this term was coined by bizdev types to make insecure nerds feel better about themselves. If you try to attract people by saying you want “rock stars” be prepared to attract narcissists, people with emotional problems, and sometimes even drug problems. Yes, all those things have happened to me when hiring developers. You did say that you wanted a rock star! You are the god of your world, so remember what you say creates it.

Underground rock stars

You will never hire one of these people. They are either independently wealthy and don’t need to work, are employed already by Google, or would require more than 100% of equity in your company and a cash bonus equal to double all your cash in the bank. It is not worth wasting your time with them.

Regarding the search for “rock stars”: there is a tendency to look for rock stars because you have a problem described best as “I am scared shitless of the technology part of our business.” My advice here is: get used to that feeling, it will never go away, and is a part of being a business owner in the 21st century. Embrace it! Don’t manage technology problems, remember you are managing people, so treat them right, resolve their problems, and in return they will fix the technology problems for you. This mentality is too close to thinking that the technology workers are the problem rather than your solution to your real problems.

Family GIRLs (and GUYS)

There are many good people who are past thirty with families who don’t want to participate in the orgy of Silicon Valley, with the constant networking and painful pivoting. They know the game at a hot startup and are unwilling to sacrifice every waking moment of their life for a company, but the forty hours you get a week with them will be golden.

To hire these people you need to provide a long term commitment, meaning cash in the bank to hire them for a year or beyond. They will never jump to a startup with the promise of equity and a very low salary up front. You won’t have to pay them outrageous amounts of money, but you’ll never get them for dirt cheap. These are my favorite type of people, especially in a team dynamic. If you can deal with kids, you can deal with the emotional rollercoaster of building a new business, and you need the calming influence of people like this to succeed. Often these people don’t live in Silicon Valley or major metropolitan areas. And, there are tons of women in this category who don’t want to work with “brogrammers.” Me neither.

Green newbies

As “software eats the world” we should expect more pigs at the trough, so to speak. There are many people out there that you probably never thought of hiring. These are people that want to switch careers and don’t know how. Know a few of these people? They are smart and capable, but for whatever reason won’t quit their jobs and enroll in a 4 year college studying computer science (I don’t know, maybe taking on hundreds of thousands of dollars of debt scares them?). If you catch them before they spend several years on Codecademy and are snapped up by someone else you can find good people here.

They must start with the drive to learn programming on their own. And, there is no independent learning that can substitute for coding inside a startup environment with other smart people. If you can find someone that has discipline and drive, you can train them if you are willing to create a process and give them time to succeed. I prefer people with degrees in the sciences who have started learning programming on their own. You cannot take someone who has no desire to learn programming and make them like it, so don’t waste your time with that. But, remember that communication skills and people skills are also hard to come by. If you find someone learning programming who has a good personality, pursue them. I don’t recommend hiring minors, only because their lives are shifting heavily and if you want operational continuity you won’t find it there.

To hire these kind of people, start them as contractors with a good living wage. Make it worth their while to jump ship from whatever job they are in and want to stay at your company and succeed. You’ll save money (the first six months at least) on a regular developer salary (and less taxes since you are hiring them as a contractor). Make sure they know there is a bigger opportunity once they succeed in this “training role” that includes a better salary and equity in what they are helping you build. Most developers can get $80k a year without batting an eye at a recruiter, and if you come in offering $40k (adjusted to your locale) with an opportunity to build something amazing in a great environment, you can attract good people that can succeed long term.

What is a “good” environment? I strongly recommend having someone at least part time who can mentor these newbies. They will flounder a bit and so pair programming and code reviews are critical and something the executive team should see value in. You need a process that keeps them engaged and gives you insight into their progress without being overbearing and letting you succumb to your micromanaging instincts. Even if they are remote workers you can pull this off: make sure they have an office, or at least are gathering in a co-working space. For new developers, working from home is too full of distractions to make it productive. Have daily standups where people communicate their goals. Have a weekly “acceptance” meeting where developers show off what they built for feedback. And, this is important: give them space to learn new things, much like Google’s 20% time. The time they spend here will end up benefitting you in the long run, as their environment will promote them learning new technologies to help on the job. You are not a developer and probably don’t know what new technologies they should be learning, so give them space to explore for the company.

Hiring someone is a tricky business. And, there are diamonds in the rough if you put yourself in a position to grab them. It seems strange to me that there are people complaining about a lack of developers when unemployment is at an all time high. Create an environment where good people can grow and succeed and you’ll have employees for life.

Discussion on Hacker News