What I Would Look For When Hiring a Modern API Developer?
I get asked about hiring developer advocates, and API developers quite often during the week, but this specific question in my inbox from Augmate, I found more interesting. I thought their usage of a “modern API developer” was a little different, which gave me a reason to provide some fresh thought on the subject.
After reading the question, my first response was going to be: API developer for consuming APIs or providing API? A thought which I immediately nullified, because any “modern API developer” is both. You should never just consume APIs, or just develop APIs, you should always do both—something that will give you the healthy perspective that I would be looking for when hiring.
Next, there is the matter of which programming language they should be fluent in. I'll leave it to you to test for skills and knowledge that is relevant to your technology stack. Having been a director of IT, and development team manager, the requirements are always different in each environment I've worked in—I won't pretend there is one HR process to rule them all. You know your environment and needs, and you should develop a line of interview questions that reflects your objectives.
In addition to your regular line of questioning, I would suggest that you also want someone who is language curious, and has played around with many of the popular languages, and not just stuck in one discipline like enterprise (C# & Java), web (PHP, Python, Ruby, JS), mobile (Obj-C), and even someone who plays around with leading edge approaches using Node.js, Scala, and Go. You want to make sure they are proficient in the languages and technologies that speak to your core operations, but someone who is also aware of what is going elsewhere in the landscape—making for much more of a pragmatic developer, and reducing dogma to healthier levels.
Beyond the code I’m also looking for signs that a developer is well read, and communicative, and the best ways to identify this in 2014 via their blog, Twitter, Stack Exchange and Github accounts. I’m sure there are plenty of scenarios where you want a developer who is better coder than communicator, but when it comes to API design and development, I want someone who is a rabid consumer of other blogs, active communicator, and isn't afraid to publish code in the public sphere. Your API is about communicating with external systems and applications, and if your developer isn't a communicator, will they be able to do this?
To be a modern API developer, you should be fluent in multiple languages, active across relevant communities, via Twitter, and Github, and have an active blog demonstrating your passion for your craft. I know this isn’t the perfect formula for you to follow when embarking on your API developer hiring process, but hopefully it gives you some important tools you can use to help find what you are looking for. Additionally, each of the tools I’ve referenced have APIs themselves, and maybe its time that our hiring processes moved online, become more interoperable, playing both a synchronous, and asynchronous role in hiring developers, while also keeping pace with where the API space is headed?