Thursday, November 12, 2009

Developer Relations Explained (The Nerdy Way)

I often find it hard to answer the question, "So, what do you do at Google?" I find it hardest when that question is asked by someone completely outside the tech field, like a face-painter or a taxi driver, but it is hard even to explain to techies. It's not as simple as saying that I'm a tester, a software engineer, a product manager, or a support staff, because it's a crazy awesome combination of all the above. I'm in developer relations, and there are an awful lot of ways to relate to developers. We write articles and blog posts, create sample code and one-off projects, maintain open-source projects, respond to forum posts, triage bugs, speak at conferences, meet with partners, and generally do what needs to get done.

One way of explaining our various roles in developer relations is to break it down into two parts: first, the type of developers that we support, and second, the particular developer product(s) that we support. For example, I generally support long-tail developers, and I supported the Maps APIs for the first 3 years, and now I'm supporting the Wave APIs. Some of my colleagues support our higher-touch partners or even our paying customers, and their role involves more 1-on-1 meetings and emails. You can play with the little app below to experiment with more configurations of products and developer types:

Currently, in developer relations, we have one of two specific titles: "Developer Programs Engineer" and "Developer Advocate". Basically, the DPE supports the long-tail and the DA supports the high-touch partners. It doesn't really split as even as that in reality, but that's the basic idea.

So, that brings me to the real reason for this post. We are now hiring DPEs and DAs. The jobs site only lists positions for Mountain View and New York, but there are also scattered positions around the world, in places like Australia, China, and India. It's a fun challenge to figure out how best to relate to developers using our growing number of developer products (including the just-released Go language), and we can always benefit from having a broad range of opinions and skills represented on our team. If you're interested, apply! :)