Why I applied for a job at Google
Background [You can skip this if you’re not interested in the history of Google and me]
My first exposure to Android was at the Google developer day in London in September 2008. Dan Morrill gave an introduction to Android talk, some concerns were raised about application trust, I offered a cryptographic signing solution, he asked for my business card, and I didn’t hear much after that. I wasn’t too concerned because Android was a hot thing, and Google later hired Reto Meier as the android developer advocate in London, and given that Reto wrote one of the first truly useful Android developer guides I could see why he would be a natural choice, so I thought nothing more of it, and started hacking away at some Android projects including AndAppStore.
In February 2010 I received a message from a recruiter at Google asking me if I’d be interested in discussing job opportunities in Google. At that time I was still building up AndAppStore and so I politely said no thanks.
In July 2010 I realised that AndAppStore was going to grow beyond what my company could handle without expanding the company significantly really quickly (which is never a great idea). Given its increase in popularity with non-Google approved device manufacturers I decided to start exploring selling AndAppStore to a company operating in that area who could take it to then next level, and look at what I would do post-AndAppStore. I got in contact with the recruiter who’d reached out to me, had a chat with a Google recruiter who was involved with developer relations roles, and I blew my chances out of the water and things went no further.
There are two fundamental reasons I think I blew it; Lack of preparation and lack of commitment. I had started exploring options for selling AndAppStore to another company, and had considered the idea of selling me as an employee part of it, so I wasn’t 100% committed to the interview and it dropped down my priority list, which left me badly prepared and probably sounding like I may not have been interested in any job. I also hadn’t decided what I wanted to do, and as there were two roles that interested me, I also probably came across as someone who couldn’t make their mind up.
If I had to pick one specific point where I blew things it would be when I was asked if I could discuss big-O notation and I said I could but not at great depth. My intention was to convey I can compare big-O expressions for different algorithms, but wouldn’t be able to create a big-O expression for an algorithm in my head on the spot, or repeat parrot fashion a big-O expression for a randomly selected popular search or sort algorithm (because I haven’t needed to code those types of algorithms for many years). The problem was I could tell it went across as “I can give you the Wikipedia definition of what it is, but have no idea beyond that”, because after that question the chat ended reasonably quickly and I can remember a phrase similar to “At Google we like all our employees to be able to hold technical discussions involving common software engineering concepts” being used.
Fast forward to the start of March 2011. AndAppStore has been sold, and I’d agreed to work on a consultancy basis as opposed to being a full-time part of AndAppStore, which gave me time to think over what I wanted to do, and I came to the conclusion that I wanted to help build the Android ecosystem, and the place that I thought I could do that the most effectively was at Google.
My initial thought was that Google probably still has my big-O gaffe on record and so I wouldn’t even get a call back, but in the end, after some encouraging messages from various people, I was convinced that I had nothing to lose, thought “what the hell” and I applied for a Developer Relations job, and got a kind message from Reto indicating it’s a role that he badly wants to see filled, so I thought something may happen about. it.
As of now nothing has happened, I’ve not received any official feedback on my application either way, so I thought I’d put out the reasons why I applied for the Developer Relations Program Manager job so when someone gets the job they’ll hopefully be able to look at some of the things I’d like to see addressed.
So why a Developer Relations Program Manager ? [To get an idea of the job you can currently see the exact job posting I applied for on Google’s jobs site.]
During the 2 decades I’ve been paid to work in IT I’ve done many things; Sure, I’ve been a coder, but I’ve also designed high-volume, high-availability systems for large corporations, had responsibility for sections of IT infrastructure for one of the world’s top 20 banks, been involved in business level and technical negations for many companies, given talks and presentations at various meetings and conferences, and offered technical and business advice to developers and entrepreneurs, and so I wanted a role which would allow me to pull on all of these areas.
The DRPM job seemed to fit this role. The first line of the role description says “…, you will be responsible for making developers in the region successful by building applications and businesses on Google’s developer products and APIs”, and the “applications and businesses” indicated to me I could use a wide range of my expertise, and wouldn’t be focused solely on my coding abilities.
Secondly, the role is about supporting developers by creating and maintaining relationships with various groups. This is something that I feel is a little weak in the European Android eco-system at the moment, and a post on the android-discuss mailing list indicates that it’s something other developers would like to see improved on as well.
Don’t get me wrong; The guys at Google are doing what they can. I’ve met Reto several times and Nick Butcher a few times, and I know they do go the extra mile when possible, but they’re developer advocates, and Google’s developer relations job description page indicates their focus is broader and more high level than dealing solely with grass-roots developers, and there is only so much time in the day that they have. The DRPM job seems to be more focused on developer interaction, which is further down their official priority list.
So the next question I can see coming is what would I do….
So what would I want to try to do?
Like any job, when you get it your priorities are heavily influenced (if not dictated) by the business, and I don’t, for one minute, think Google would give me a job just to do what I want to do, but there are three main things I’d like to try to do;
1. Crowd-sourced developer suggestions
Google Moderator screams out to be used for this. What do developers want to see in the next technical Android Developers blog article?, easy, run a Moderator series and let people vote. Where would developers like a dev event?, again, use moderator to see.
Moderator is a great way to get answers to questions from a mass audience. You don’t have to implement the top answer, but it is a great tool for providing input into business decisions to ensure what you do implement is popular.
As an example of this I’ve set up a moderator series for what you’d like to see Google developer relations do.
2. Rumour squashing.
In the last couple of weeks I’ve seen at least one rumour that I know isn’t true do the rounds of the Android news sites. I can say which one because my knowledge of the truth comes from a project which has about 4 NDAs (and their respective lawyers) in place between me and an authoritative source of information on the matter, but I do know it’s a rumour which would influence developers decisions on which platforms to develop on.
By getting more involved with the high level mailing lists, such as android-discuss, some of the most misleading rumours could be squashed before they take hold.
I know full well that you can’t run a “Deny that which we can deny” policy because people can infer what’s happening. But there is a difference between denying everything which can be denied and denying things which damage the attractiveness of a platform and are simply untrue.
3. Fostering community cohesion
I’ve seen examples of where community groups in the same location aren’t always aware each others events and activities. I’d like to see that improved so that groups can organise events and other groups who may have an interest in those events can easily see them and pass the information on to their members.
Give the lack of Google’s response, and my fluffed chat last year, I don’t hold out much hope of getting the DRPM job, but, hopefully the person who does will find this useful, and makes use of the moderator series to help provide developers with what they want to see.
[Update: On the 14th of April, a month and a bit after applying, I received an email from a google recruiter saying they were passing my details on to the developer relations recruiter, then the developer relations recruiter emailed me saying the position had already been filled, so in the end at least I knew my application lost anywhere]