Recruiting programmers to your startup

Here are some things I’ve learned over the years about recruiting programmers* to startups. This is a big topic: many of the points I make briefly here could warrant their own blog posts, and I’m sure I’ve omitted a lot.

– The most important thing to understand is what motivates programmers. This is where having been a programmer yourself can be very helpful. In my experience programmers care about 1) working on interesting technical problems, 2) working with other talented people, 3) working in a friendly, creative environment, 4) working on software that ends up getting used by lots of people. Like everyone, compensation matters, but for programmers it is often a “threshold variable”. They want enough to not have to spend time worrying about money, but once an offer passes their minimum compensation threshold they’ll decide based on other factors.

– Software development is a creative activity and needs to be treated as such. Sometimes a programmer can have an idea on, say, the subway that can save weeks of work or add some great new functionality. Business people who don’t understand this make the mistake of emphasizing mechanistic metrics like the number of hours in the office and the number of bugs fixed per week. This is demoralizing and counterproductive. Of course if you are running a company you need to have deadlines, but you can do so while also being very flexible about how people reach them.

It is sometimes helpful to think of recruiting as 3 phases: finding candidates, screening candidates, and convincing candidates to join you.

– Finding means making contact with good candidates. There are no shortcuts here. You need to show up to schools, hackathons, meetups – wherever great programmers hang out. If your existing employees love their jobs they will refer friends. Try to generate inbound contacts by creating buzz around your company. If you have trouble doing that (it’s hard), try simple things like blogging about topics that are interesting to programmers.

– Screening. Great programmers love to program and will have created lots of software that wasn’t for their jobs or school homework. Have candidates meet and (bidirectionally) interview everyone they’ll potentially be working with. If the candidate has enough free time try to do a trial project. There are also more procedural things that can be useful like code tests (although they need to be done in a respectful way and they are more about getting to know how each side thinks than actually testing whether the candidate knows how to program (hopefully you know that by this stage)).

– Convincing them to join you. This is the hardest part. Great programmers have tons of options, including cofounding their own company. The top thing you need to do is convince them what you hopefully already believe (and have been pitching investors, press etc): that your company is doing something important and impactful. The next thing you need to do is convince them that your company is one that values and takes care of employees. The best way to do this is to have a track record of treating people well and offer those past employees as references.

A few things not to do: you will never beat, say, Google on perks or job security so don’t even bother to pitch those. You’ll never beat Wall Street banks or rich big companies on cash salary so don’t pitch that either. You’ll never beat cofounding a company on the equity grant, but you can make a good case that, with the right equity grant, the risk/reward trade off of less equity with you is worth it.

Finally, I’ve long believed that early-stage, funded startups systematically under-grant equity to employees. Programmers shouldn’t have to choose between owning a fraction of a percent of an early-stage funded company and owning 50% of an unfunded company they’ve cofounded. Naval Ravikant recently wrote a great post about this:

Post-traction companies can use the old numbers – you can’t. Your first two engineers? They’re just late founders. Treat them as such. Expect as much.

Making those first engineers “late cofounders” will dramatically increase your chances of recruiting great people. This is a necessary (but not sufficient) condition for getting the recruiting flywheel spinning where great people beget more great people.

* As someone who personally programmed for 20 years including about 10 years professionally, I preferred to call myself a “programmer.” Some people prefer other words like “hacker” “developer”, “engineer” etc. I think the difference is just uninteresting nomenclature but others seem to disagree.

“Otherwise do something else”

I remember back when I started my first company, a friend said to me “get ready to have a knot in your stomach and feel nauseous for years.”  I laughed it off then, but it was probably the most accurate advice I’ve ever gotten.

I haven’t slept well for years. Even now with my last startup sold, I stay up at night thinking about how to change the website, make payroll, raise more money, etc.

In 1995, I was a graduate student studying philosophy at Columbia.  I was also doing computer programming on the side.  The programming was going well and I was getting some good job offers. I happened to get to have dinner with the philosopher Daniel Dennett, and I asked him what he thought I should do with my career.  He said: “If there is absolutely no way you can imagine being happy except studying philosophy, study philosophy. Otherwise do something else.”

I’d say the same thing about starting companies.

Business development: the Goldilocks principle

Background: At Hunch, we switched our focus (“pivoted“) about 14 months ago from B2C to B2B. Over that time, we pitched over 500 potential partners, trying to get them to use and eventually pay for our recommendation services. This process had its ups and downs, but eventually ended well when – after 8 months of grueling diligence – eBay decided to acquire Hunch in what I expect will be a successful outcome for both companies. During this time, I got a crash course in B2B sales/business development. Here is the first in a series of blog posts based on what I learned.

Somewhat counterintuitively, the biggest problem we encountered when pitching Hunch technology to potential partners wasn’t that it wasn’t interesting or useful to them, but that it was so interesting and useful that they considered it “strategic” or “core” and thus felt they needed to own and not rent it. The situation reminded me of the “Goldilocks principle” sometimes referred to in scientific contexts:

The Goldilocks principle states that something must fall within certain margins, as opposed to reaching extremes. It is used, for example, in the Rare Earth hypothesis to state that a planet must neither be too far away from, nor too close to the sun to support life.

Basically, if your technology is “too hot” – or, in business-speak, “strategic” or “core” – then there are three likely outcomes:

1. The potential partner turns you down because they decide to build a similar product themselves. This happened to us a number of times. I think part of the reason was that there was a lot of market buzz around “big data” and machine learning which lead to the perception – rightly or wrongly – that those capabilities needed to be owned and not rented.

2. The potential partner says yes because your assets are so defensible they can’t replicate them. I’m sure Zynga considers the social graph strategic but at least for now they have no choice but to partner with Facebook to access it. It is very rare for startups to have this kind of leverage, but ones that do are extremely valuable.

3. The potential partner wants to own what you do, but thinks you have a sufficiently superior team and technology that acquiring you instead of replicating you makes more sense. This is only possible if the partner is large enough to acquire you and has a philosophy consistent with acquiring versus building everything in-house. (A common tech business term is “NIH” which stands for “Not Invented Here”. It refers to a set of companies that consider anything developed outside of their offices technologically inferior).

At the other extreme, if your technology is “too cold” – perceived as not useful by potential partners – you’re going to have a lot of frustrating meetings.  In this case, it is probably wise to reconsider whether there is actually demand for your product.

To build a long-term sustainable business, the best place to be is “just right” – useful to lots of partners but not so strategic that they are unwilling to rent it. This is where I wanted Hunch to be but we never got there.  Most companies I know use externally developed products (commercial or open source) for databases, web servers, web analytics, email delivery, payment processors, etc. These are often highly competitive markets but the companies that win in these markets tend to become large and independently sustainable. These “just right” companies – to extend the astronomy analogy – are the planets that support life.

Some lessons learned

Note: Google was kind enough to invite me to give a short talk at their Zeitgeist conference earlier this week. It was a really interesting conference and I got a chance to meet a lot of people I admire. For my talk, I decided to use material from some of my blog posts over the years that I thought might appeal to a broader audience. Unfortunately, I was still recovering from a nastly cold/flu so I didn’t deliver the talk as well as I’d like.  Below is the text.

Today, I wanted to talk about some of the most important lessons I’ve learned over the years from my experiences as an investor and entrepreneur.

1. If you aren’t getting rejected on a daily basis, your goals aren’t ambitious enough

My most humbling and educational career experience was when I was starting out in the tech world.  I applied to literally hundreds of jobs:  low-level VC roles, startup jobs, and various positions at big tech companies.  I had an unusual background: I was a philosophy undergrad and a self-taught programmer. I got rejected from every single job I applied to.

The reason this experience was so useful was that it helped me to develop a thick skin.  I came to realize that employers weren’t really rejecting me as a person or on my potential – they were rejecting a resume.  As the process became depersonalized, I became bolder in my tactics. Eventually, I landed a job that led to my first startup getting funded.

One of the great things about looking for a job is that your payoff is almost entirely a max function – the best of all outcomes – not an average. This is also generally true for lots of activities startups do: raising money, creating partnerships, hiring, marketing and so on.

So, every day – to this day – I make it a point of trying something new and ambitious and getting rejected.

2. Don’t climb the wrong hill

I spend a lot of time trying to recruit people to startups, and I’m surprised how often I see smart, ambitious people who get stuck in fields they don’t like because they sense they are making incremental, day-to-day progress.

I think a good analogy for escaping this trap can be found in computer science, in what are known as hill climbing algorithms. Imagine a landscape with hills of varying heights.  You are dropped randomly somewhere on the landscape. How do you find the highest point?

The lure of the current hill is strong.  There is a natural human tendency to make the next step an upward one.  People fall for a common trap highlighted by behavioral economists:  they tend to systematically overvalue near term over long term rewards.

This effect seems to be even stronger in more ambitious people. Their ambition seems to make it hard for them to forgo the nearby upward step.

The lesson from computer science is: meander some in your walk (especially early on), randomly drop yourself into new parts of the terrain, and when you find the highest hill, don’t waste any more time on the current hill no matter how much better the next step up might appear.

3. The next big thing will start out looking like a toy

A majority of the top internet companies a decade ago are barely in existence today.  How did this happen?  These companies weren’t complacent – they were run by smart executives who were constantly aware that they could lose their lead.

The reason big new things sneak by incumbents is that the next big thing always starts out being dismissed as a toy.  This is one of the main insights of Clay Christensen’s “disruptive technology” theory, which has been widely studied but I think is still rarely applied because it is so counter-intuitive to conventional management practices.

Disruptive technologies are dismissed as toys because when they are first launched they “undershoot” their users’ needs. The first telephone could only carry voices a mile or two. The leading incumbent of the time, Western Union, chose not to acquire telephone technology because they didn’t see how it could be useful to businesses and railroads – their best customers. What they failed to anticipate was how rapidly telephone technology and infrastructure would improve. The same was true of how mainframe companies viewed the PC, and how modern telecom companies viewed Skype.

The list of top internet companies in 10 years will look very different than that same list does today. And the new ones on the list will be companies that snuck by the incumbents because people dismissed them as toys.

4. Predicting the future of the Internet is easy: anything it hasn’t yet dramatically transformed, it will.

The Internet has gone through fits and starts – a bubble, a crash, and now a revival.  Pundits are speculating that another crash is coming. Regardless of what happens in the near term, what we do know is that every year we will continue to see more and more industries succumb to the transformational power of the Internet.

Already transformed: music, news, advertising, telecom. Being transformed: finance, commerce, TV & movies, real estate, politics & government. Soon to be transformed: healthcare, education, and energy, among others.

Thus far the US has led Internet innovation. There are things the US can do to keep this lead, including: exporting the entrepreneurial ethos of Silicon Valley to the rest of the country, and allowing talented people to go where their skills are most needed – for example by changing US immigration policies.

Most importantly, we have too many people pursuing careers in banking, law and consulting. I personally encounter this bias all the time when I go to college campuses to recruit for startups. We need to convince the upcoming generation to innovate and take risks in sectors that have a direct impact on the quality of peoples’ lives.

So my advice is:
1) get rejected more
2) climb the right hill
3) create an amazing toy
4) grow that toy into something big that transforms an important industry

The downside of accelerated investment decisions

There has been a lot of talk about how early-stage valuations have risen dramatically over the past few years. Financially, this is probably good for founders and bad for investors. But a side effect of this frothy market is that financings are occurring much faster. It is very common for investors to get introduced to founders with the proviso that a term sheet will be signed in the next few days. As a result, founders and investors are spending very little time getting to know each other before entering into long-term business contracts.

This is bad news for everyone. Most significantly, founders often give up significant control to people they won’t get along with or even might end up hating. Having bad investors might not matter if the company executes flawlessly and the financing market stays frothy. But most companies have difficult episodes, and the financing market will eventually return to normal. Sadly, founders with bad investors will likely face punishing down rounds, key employees being indiscriminately fired, and elaborate financial shenanigans engineered to dilute founders and seed investors.

“It’s only when the tide goes out that you know who’s been swimming naked.” Warren Buffet likes to say this about investors, but it applies to founders as well. Taking on a new major investor should be treated with the same gravitas as taking on a new cofounder. You can’t do it in less time than it takes to really get to know someone, which is usually weeks or months. Quick financings might seem attractive but are actually fraught with risks.