When I was hired by Iron.io, they hired me as a intern Software Engineer. I was applying for a position that was originally meant to be for a full-time Software Engineer, but I asked if I could be an intern instead, as I still wasn’t confident in my engineering abilities. I’m still not.
While I am working on some software engineering tasks, I feel like the title isn’t a good representation of what I do. I also help out with marketing, for example. And I think my biggest contribution to the company, to date, has been documentation and developer advocacy.
These are not areas I’ve had much experience in, but they’re things I have found I enjoy immensely. When we made the decision that our old documentation needed to be retired (I prefer “euthanised” or “shot in the face and then burned to be 100% sure it never returns”), I started to get more serious about researching the fledgling field of developer experience.
There’s not a lot there. The most useful resource I can point you to is Pamela Fox’s Developer Support Handbook, in which she documented her experience at Google as a developer support pioneer.
Matt Cutts, of Google’s spam-fighting team, said that being able to code is akin to having a superpower in today’s society. And he’s right. It is becoming increasingly obvious that developers are a desired asset in pretty much every corner of our society today.
But every Batman needs an Alfred, and every developer needs a developer advocate. Alfred doesn’t give Batman new powers or enhance his powers in any way; rather, Alfred’s purpose is to give Batman more time to use his powers, by removing unecessary and mundane time-sinks that Batman would have had to deal with.
When I realised this, I started measuring the work we were doing at Iron in our developer support. I wasn’t measuring based on the lines of code that developers produced, I wasn’t even measuring based on the usage our platform got. Developers, like Batman, have really only one job: to kick ass. So I started measuring how long it took developers to kick ass using our system, and tried to decrease that time in whatever way I could. And so a new unit of measurement was born: Ass Kicked Per Minute.
At first, we could gain huge improvements in our Ass Kicked Per Minute
scores. Things like refactoring our navigation to be more intuitive. We
had a golden rule: if I can’t get where I want to be in two clicks, it’s
wrong. We rewrote a lot of our documentation from scratch, focusing on
completeness and accuracy. While we do have a public support chatroom,
I regard every developer that winds up there as a developer I’ve failed.
My next goal is to declare war on scrolling; scrolling is an imprecise,
wasteful navigational technique, and the less users have to do it, the
better. This means position: fixed
is my friend.
But now our Ass Kicked Per Minute scores need to be fought for. Maybe we can only shave a half of a second off a common task. It’s absolutely still worth doing, because that’s a half a second that criminals are taking purses from little old ladies, otherwise.
I get to stand in front of a room full of amazing college students in a couple weeks and talk to them about our products. And when I introduce myself and explain what I do, I have every intention of being honest:
“I spend a whole lot of time trying to save you a few seconds. And it is the best possible use of my time.”