During my years as a software engineer, I’ve discovered that most engineers (in addition to myself) tend to have a certain amount of distrust when it comes to the world of sales and marketing. Engineers like accuracy, real value and non-emotional arguments. I’m not here to critique an entire industry, but let’s just agree to admit that occasionally the marketing world “over-markets” the benefits of a particular product, trumps up its value and ingeniously plays off a consumer’s emotions - successfully closing the deal and leaving the buyer with an inferior, or at the very least unnecessary, product that he or she later comes to regret purchasing.
God forbid an engineer is ever on the losing end of this scenario! Because of our over-sensitivity to this regrettable event occurring to us and our attempts to personally avoid it at any cost, common wisdom dictates one should attempt to avoid all traditional marketing approaches when it comes to convincing engineers of anything, right? Wrong. Terribly, hopelessly and lethally (at least in this world, and I’ll explain …) wrong.
The world has changed. Engineers are no longer the loner geeks, working in dimly lit rooms, hacking away for solely personal glory on side projects the world will never understand. No. They have become the champions of innovation and the founding forces behind world-changing companies like Apple, Google, Facebook and many others. Engineers are in massive, disproportionate and obscenely high demand. In other words, and another world - they’ve become the hottest girls at the bar.
Today software engineers have their pick of any opportunity they want - your company, the company that wants to hire them to retain their seemingly magical engineering prowess - has only one shot at getting their attention. And you better be damn certain you make it count.
How? You need to apply the basic principles of marketing, and even PR, to your advantage.
Before you wrinkle up your nose at me, let me explain how - and why - it works.
Step 1: Know your product
You want engineers to come and write code for you, that’s understood. And let’s be honest, you also know that there are many other companies vying for that same attention from those same engineers. Ultimately, those engineers will only come and work with you if they want to. In this sense, they’ll only buy your product - i.e. the role that you’re offering them - if they want to buy it and come and work with you. There are many competing offers for engineers out there right now, and in this sense it’s very much a buyer’s (engineer’s) market. Which is why it’s your job to make sure that your product is the one that outshines all the others. (more on this in Step 3)
Step 2: Define your target audience
Before you can really make your product shine, however, you need to know who your target audience is; what type of engineer to you need? Data, devops, front-end, distributed systems, Ruby, polygots, etc.? Are they students, experienced, have degrees from top schools, self-taught? Should they be open-source committers or simply consumers? I know you’d love to pull dozens of engineers out of Google to work on your projects (who wouldn’t?!), but is this the level of experience that’s the best fit for your projects? Remember the level of the team should be commensurate with your challenges, otherwise you’ll risk spending a lot of time hiring a team that leaves shortly after starting due to a relative mismatch of programmer skill to engineering challenge.
Step 3: Differentiate your product
This is the fun part. Ultimately, an engineer will look at the opportunity to work on your team through 3 lenses:
Learning to differentiate your roles in as many of these areas as possible will be the key to your success in attracting the best talent. Engineers are highly rational types, and (consciously or subconsciously) will require reasons that will clearly demonstrate why your opportunity is the best option.
For instance, in my experience it is absolutely critical that you learn to tell the story of your engineering team using stories of your specific engineering challenges. (Sorry for the heavy emphasis, but this might be the most important part of the entire post.) Engineers are attracted to challenges - the bigger, the badder, the more hairy challenges they are the better.
For example, I had lunch with a senior engineer who had recently (and briefly) been on the job market. I asked him why he had decided to go and work with this little Canadian data startup I had never heard of. He didn’t miss a beat. “Because they have very interesting challenges in vertically scaling Hadoop,” he told me. For the next two minutes, he told me more about their technical challenges and why, specifically, he had gotten fired up about this company.
If you don’t have a two-minute story to use in recruiting - one that explains why this specific role is compelling (not compelling to you, mind you. compelling to an engineer!) - and explains why the technical challenges directly related to this role are interesting and worth solving, you’ll lose your audience. It’s that simple.
Engineers have far too many options right now to settle for companies that can’t specifically, accurately and quickly explain to them why they should legitimately be excited about opportunity to work there.
Step 4: Use content (and your smart engineers) to tell your story
Once you’ve defined your stories around your engineering challenges, I strongly suggest you get your best engineers to tell that story publicly for you. This can happen in the form of meetup talks, conference speaking, blog posts, video interviews, etc. Getting your engineers to tell your story publicly accomplishes something in addition to simply getting your story into the water supply - it shows off the smart people already working at your company. Smart engineers are like catnip for other smart engineers.
Bonus points: Showcase your culture
Culture is one of those things that’s very tricky to define & explain. Some companies claim to have a great culture when in reality they don’t, and other companies have an amazing engineering culture hidden below the surface that they don’t express well or necessarily know how to talk about.
When it comes to culture I normally advocate the “show it, don’t say it” approach.
Personally, I believe that an open-source mentality has become a cultural hallmark that the best teams learn how to emphasize and exude. This could be a topic further discussed, but suffice it to say that if you make it worth your engineers’ time to contribute to, and not just consume, open-source software, you’ll have gone a long way in laying the foundation of a culture that top engineers will gravitate towards.
Step 5: Identify your channels
If you’ve come this far in defining your “product,” values, audience and have nailed a couple stories on why your engineering challenges are exciting, the next step is to make this baby scale - you need to promote it! Herein lies another hidden beauty of this approach - marketing campaigns are designed to tell a story at scale!
Here’s what I suggest you do. Map out a schedule of the events, conferences and other channels you can use to distribute your story. Host events, tech talks or meetups in your office. Sponsor other existing meetups where your target audience already hangs out. Upload videos of your engineers giving presentations on YouTube. Find every possible distribution channel where you can tell your story to reach a broader audience of engineers in order to get the word out that you’re solving compelling challenges and the tools you’re using to do it.
Many CTOs aren’t especially comfortable or familiar with marketing concepts, but in reality what we’ve explained so far is how to apply marketing basics to:
This is engineering PR, and this is also what the smartest companies in the world are already out there doing. The stakes are incredibly high. Don’t ignore this application of traditional marketing to your own recruiting process - or ignore it at your peril.
(Update: I’ve received so much interest in this post, I decided to put up a response form. If you’re interested in obtaining help with engineering PR for your startup/company, please fill out this short form.)