Skip to content
loading...

What is the role of a developer advocate?

twitter logo github logo ・1 min read  

A few of high profile speakers in conferences and big companies have the designation "Developer Advocate".

  • What exactly does a Developer Advocate do?
  • Do they have a specific job description or is it an umbrella term for a wide range of roles?
  • Is someone in the Dev community a Developer Advocate or know someone who is one?
twitter logo DISCUSS (18)
markdown guide
 

Hi, I'm Michael and I'm an Developer Advocate (DA). I started out as a developer some 20y ago and I've been in a DA role at different companies for the last six years. It's a super exciting and varied job: from public speaking engagements at conferences and meetups to developing demos and tools to writing blog posts, articles, and books to creating audio-visual artefacts (podcasts, interviews, demo screen casts) to maintaining advocacy sites to giving workshops and training sessions. I spend ca. 70% on the road where I meet users, customers, and partners. And then I hang out on Slack channels, in office hours, and on StackOverflow to help users. So part of the job is to get the word about the tech out there and communicate good practices.

The other part—which sets advocacy apart from evangelism—is to close the loop: I collect feedback, document how folks are using the technology, and note suggestions and complains. This feedback I channel back to Engineering and Product Management to improve the technology and shape the roadmap. As a DA, you're not Sales (we don't sell stuff, heck I don't even know our pricing) and you're not Marketing (leads are not our KPIs). You represent the technology you're advocating to developers and ops folks and your credibility comes from the fact that you're hands-on with it on a daily basis, with the goal to make people successful with the respective technology.

 
 

Thanks for the clear and crisp explanation Michael. DA sounds exciting.

One thing which I don't get is, at what stage will a product startup require a developer advocate?

 

You're welcome and that's an excellent question—when does it make sense to have dedicate DA position? When I joined the start-ups they were well funded (B/C round) and had some 130 and 80 people respectively there. Initially, the DA role would likely be taken care of by the CTO (if you're dealing with a dozen of employees) but at some point it pays off to have a dedicated person for this role. Think about it this way: somewhere in your journey the CTO will stop doing daily engineering management and a dedicated VP of Engineering is hired to take care of this task, freeing up the CTO to focus on strategic decisions and activities. Maybe this is also the right size of the company to either find a developer in-house with great people skills and who likes to present, produce technical content, etc. who takes on the role of a DA or maybe you look externally in places like devrel.net.

 

I'm not a developer advocate, but I've looked into becoming one and have talked to a few friends who fall under that title. From what I understand, it is a really different job depending on the company. At some companies, it can be, essentially, a sales role where you are selling software from a developer's perspective. At other places, it's more of a speaking/blogging/communicating about code job. You normally write demo apps to show off tech and then demo them around at conferences/meetups and online.

 

This is a really good response. I have been a developer advocate for about a year now. I like to think that almost 20 years of development as a freelancer and software engineer for a few larger companies more recently, that all of this knowledge of how to build web apps, use JavaScript, HTML, CSS, how to work with others and deploy code as well as how to teach others to code are the pre-requisites for my job as a React developer advocate. I mostly write demos using the React components that my company makes and also provide general industry and programming related education to those as well as find a way to support initiatives and goals my team (KendoReact) wishes to achieve. I am also a liazon between the React community, our customers that are React developers and the engineering or marketing teams. I relay info back to our teams as well as blog, speak and attend conferences, write documentation, contribute to open source, and pull my own resources as a designer and developer together to create different types of content for our readers, customers and basically anyone who will listen to me talk! lol

Yes, must have Soft Skills, there is a book on it lol. Really by John Sonmez, you should read it. :)

That's just me, I will say that each dev advocate usually has a unique job tailored to the type of technology they are advocating for. As someone who works with React, the skills I need are web. If I were a dev advocate for let's pick a random company ... "Niantic" ... I may need to understand things like Pokemon Go, the programming language that it and the other games they develop are built with like C#, I will need to have a good understanding of developing native applications and then as well be able to write well and teach skills involved with that area of technology.

 

So it is really more of an umbrella term for a wide range of roles. Would saying

"Product Evangelist who knows the ins and outs of the how the product is built and works"

be more of a generic description?

 

Typically advocates keep documentation up to date, keep contact with the community, do demos and blog about the product, pass feedback on questions, and basically help facilitate a good developer experience with the company. It's a semi-technical role with high soft skills requirements.

You can think of them as public relation persons representing some software or dev methodology (SaFE agile comes to mind). You can see a lot of them giving speeches at conferences.

Source: medium.com/@ashleymcnamara/what-is...

This clarifies a lot of things. One person that immediately came to my mind after reading this desription is Dan Abramov from the React team.

Well, not exactly 😄Dev advocates are more of salesman persons than developers, at least I got that impression. I don't have a good example, but what came up to my mind at first is Peggy Rayzis from the Apollo graphql, if I understood correctly her main job is to go from conference to conference and talk about Apollo. She does have some knowledge about programming, but she doesn't actively contribute to Apollo development. Correct me if I'm wrong.

I guess this really is one of those roles where you can't pin and say this is what they do. It really does differ from company to company and person to person. I wonder how they measure their growth.

 

It's always seemed to me that a developer advocate is a new-ish title that has the same spectrum of meaning that "software engineer" does in that it can and usually does mean different things depending on where you work. It also can go by different names. To some, it's software engineer, others is software developer, or programmer. Dev advocates can be called engineering advocates or technical relation specialist and the like. From what I've gathered, they are kind of the externally facing version of a scrum master. Where a scrum master runs deflection for the developers and serves as the middle man between whiny executives, sales people, or other developer teams, a developer advocates seem to do the same thing, but with the customers, clients, and partners outside the company that have a vested interest in the product being done right. Not sure if this is accurate, but that's what it seems anyway.

 

I'm a Developer Advocate. I'll try to answer your questions as best I can.

  • What exactly does a Developer Advocate do?

    • I usually do a mix of things, but mostly:
    • write demo apps and blog posts that show you how I built that demo code
    • go to events and interact with people (I'm actually at a hackathon right now), gathering feedback about our products, feedback that I then take back to the product teams, helping them make it better
    • speak at conferences and meetups on topics that I'm passionate about, mostly JavaScript
    • write documentation, quick start guides and tutorials
  • Do they have a specific job description or is it an umbrella term for a wide range of roles?

  • Is someone in the Dev community a Developer Advocate or know someone who is one?

    • I am, but there are a bunch of others lurking around here from what I've seen. Like Martyn and Hui Jing

I'd be more than happy to do an #ama if people want to know more.

 

Thanks Alex. I now have a better understanding on what DA's do. #AMA would definitely help the community as I'm pretty sure there are other folks who still wonder what DA means.

 

Hi Dinesh,

Just saw this post, I'm a Developer Advocate and I thought I would also take a stab at answering your questions. I am very new to the job unlike @mhausenblas , so my interpretation may be different.

What exactly does a Developer Advocate do?

I was hired onto my team to support a roll out of a new UI product for my company. This specific product is a React Component Library that we are focusing on this year. I write articles that bring users into our site and I build demos and tutorials on how developers can more easily work with our components as well as React. My company is a great company to do this job for because they truly let us do what we are good at. They don't tell me what to write about and I don't always have to be pitching our product. I also serve as a liaison to the community and to the community a liaison to our engineering team. About 20% of my time will be spent traveling to JavaScript and React conferences. I will submit talks to all of them and speak at the ones that let me, attending and possibly working a booth at the ones I'm not speaking at. I work from home when I'm not on the road and attend all the major meetups in my neck of the woods. I also will try to attend meetups while on the road is possible, anything to connect with our community.

Do they have a specific job description or is it an umbrella term for a wide range of roles?

Every company is different and if they are great at this, they will let you focus on the things you do well. For instance I come from a technical background and was a UI engineer at Tesla before joining. For these reasons I focus more on demos and blog post articles that teach about React and our product. Others might focus more on marketing. I don't really consider content marketing as part of marketing I feel those are separate efforts in my company. But I do get a taste of marketing often but I admit I'm not great at traditional marketing or understanding how it works. lol But I'm great at content marketing because I have several speaking engagements, blogs and podcasts under my belt. This helps me to have a really good idea of what will work as far as content marketing.

Is someone in the Dev community a Developer Advocate or know someone who is one?

Obviously, I am. But I would say that anyone in the Dev.to community that is contributing at large would probably be a good candidate for Developer Relations or Developer Advocacy. For instance at my job we have a Developer Relations team and I am a Developer Advocate on that team representing the React community and our React product.

 

Thanks Eric. I have a better understanding of the role now. You rock!

 

I agree that Developer Advocacy means different things for different companies. Here is a description I like to use.

Developer Advocates - our job is to help developers solve their problems and built trust. That's #1. Now, if we can do it with our company technologies, that's even better. If we know that our solution is not the best fit, we have to be honest and say that this product/service is not the best fit.

I also like to add that we provide developer education.

Hope this helps.

 
Classic DEV Post from Jun 18 '19

Discussing the launch of Libra, "A new global currency"

A thread to talk about the launch of Libra

Dinesh Pandiyan profile image
Engineer | Speaker | Blogger | OSS | I build things ☕