Ever since I got the fancy title of “Developer Evangelist”, people look at me cross-eyed and wonder what that is. The reactions reach from “oh so you don’t code any more” to “that’s marketing isn’t it?”. Both are wrong.
I see the job of an evangelist to validate your company and its products in the outside world. This means that you need to keep an eye on what your company is doing, give feedback and stop bad documentation and too complex systems from going live. In order to achieve this you get to know systems before they go out, play with them and write or help write their documentation. You also go out into the world, speak at conferences and go into companies for “brown bags” and find out how people use your employer’s products. The feedback you get from that helps you validate or defeat internal assumptions about “what every developer needs” and “how people use things”.
I am in Bangalore, India at the moment and was asked to train evangelists for the local market. A bit of a weird concept as you find evangelists internally – you do not train them to become one.
In a two hour session I was asked to outline what it means to be an evangelist and what to do and not to do. Here’s the outcome on slideshare: