Skip to content
Angie Jones

Artwork: Ariel Davis

Demystifying Developer Advocacy

A seasoned developer advocate's answers to the most common DevRel FAQs.

Photo of Angie Jones
Applitools logo

Angie Jones // Senior Director, Developer Relations, Applitools

The ReadME Project amplifies the voices of the open source community: the maintainers, developers, and teams whose contributions move the world forward every day.

Also in Developer Stories

My differences are my superpowers

As Developer Relations is a relatively new career path, I often get questions about the role. Here are answers to some of the most frequently asked questions.

What does a developer advocate do?

As a developer advocate, my main responsibility is to serve the software engineering community. I do this by providing content in the form of blog posts, webinar and conference talks, podcast interviews, live streams, and video tutorials.

Developer advocates typically specialize in a certain niche in tech. For example, my niches are test automation and Java programming. So, the content I produce is usually focused on educating the community on these topics.

Why would a company hire a developer advocate?

This one puzzles a lot of people because as a developer advocate I work for the community and that work is sponsored by my employer.

The benefit to a company is having a known and trusted thought leader (read ‘community member’ if that term makes you cringe 😂) who provides real value to the community associated with your brand.

Usually companies will hire a developer advocate whose niche aligns with their product(s), as they share a common target audience and naturally the developer advocate will reference said products in some of their content.

It’s a great way to increase awareness about the company and its products in a very natural and organic way: engineer to engineer.

Is developer relations a form of marketing?

Kind of, but not in the cringey way we typically think of. Developer advocates are engineers, not marketers. In fact, they are trusted engineers with influence. A good developer advocate takes this very seriously and will not betray the community’s trust.

Let me attempt to explain this with a scenario.

The marketing team may inform me that a new feature of the product is being released. They will build their own marketing campaign around promoting that feature. As a developer advocate, I will play with that feature, provide feedback to R&D on any improvements that should be made for the community, and will possibly produce content about the feature.

This is where the difference lies. I will only produce content if I believe it truly adds value for my community. And if I do produce content, it is void of gimmicky marketing buzzwords and instead comes from the voice of an engineer, essentially focusing on a real technical problem and demonstrating how the new feature addresses it.

I encourage companies to keep their Marketing and Developer Relations departments separate, as a developer advocate can become “tainted” if Marketing is giving them their directives. To that note, developer advocates should also avoid other salesy type activities such as staffing conference booths or speaking in vendor slots, as the goal of these types of activities is usually to sell, market, or solicit - none of which a good developer advocate should be doing.

I will only produce content if I believe it truly adds value for my community. And if I do produce content, it is void of gimmicky marketing buzzwords and instead comes from the voice of an engineer, essentially focusing on a real technical problem and demonstrating how the new feature addresses it.

Do developer advocates only create content about their employer’s products?

Not at all. A developer advocate should be free to produce content that is helpful to the tech community. A lot of that may have nothing to do with their employer’s products and that’s perfectly ok. A developer advocate does not become a trusted voice of the community by constantly shoving their employer’s products down people’s throats.

Even when producing content about their employer’s content, a good developer advocate ensures the content is not a sales pitch, but instead provides real value to the community.

Is engineering experience required to become a developer advocate?

I’m not a gatekeeper but I strongly believe that engineering experience helps in a developer advocate role. Developer advocates have to build and maintain credibility with their engineering peers, understand their pain points, and foresee how given solutions would address their needs. Without engineering experience, this is hard to do. Not impossible, but definitely hard.

Having said that, the most desirable trait of a developer advocate is a willingness to learn in public and share what they’ve learned with others, as a huge part of the role is embracing and creating new solutions to help fellow engineers.

Early-career engineers can certainly excel in the role, especially under the guidance and mentorship of more experienced developer advocates.

Do developer advocates still get to code?

When I transitioned from a pure engineering role into a developer advocate role, I was very concerned about losing my technical skills. It turns out there was no reason to worry.

In order to produce educational technical content, a developer advocate has to first educate themselves enough on the topic to be able to teach it to others. This requires research and building.

For example, my employers’ API is supported in five different programming languages and integrates with more than 50 different test libraries. This gives me quite a bit to learn in order to speak and teach to these various sub-communities within tech. But how amazing is that?! I’m not tied down to a specific tech stack like I would be in a traditional engineering role. Instead I am able to explore and learn new languages and frameworks as I see fit.

I do more coding now than I did in my traditional engineering roles, and I can see my growth as an engineer because of the variety of problems I get to solve.

What are the key traits a developer advocate should have?

In addition to technical skills, developer advocates should have a community-first mindset. Their loyalty should be to the community first and foremost, and their primary goal should be to be of service to the community. A developer advocate should never mislead fellow engineers to influence a sale.

Developer advocates should also be knowledgeable about adjacent tools and services that complement and compete with their employer’s products. This will enable the developer advocate to provide engineers with the insight needed to make sound decisions. A good developer advocate will even direct an engineer to a competitor’s product if that’s the best solution for the given engineer’s problem. Remember, community-first.

I’m not one who thinks passion is a requirement to be an engineer, but it certainly helps for developer advocates. It’s difficult to consistently create content for a topic that you have very little interest in. Developer advocates are often the public face of their company and if you’re not excited about your products, it’s really hard to get others excited about it. Because of this, I strongly encourage aspiring developer advocates to only accept this position for products that you are genuinely interested in using and learning more about.

Communication skills are a must-have for developer advocates. This role is all about communicating technical concepts to audiences of varying experience levels. A developer advocate may be required to communicate these concepts via written or verbal formats, so it helps to be strong in both.

Creativity and curiosity are also nice-to-have traits for developer advocates. I often find myself discovering new and useful ways to use my employer’s products to solve unique challenges that community members face.

Can developer advocates easily switch back to pure engineering roles?

Absolutely! As I mentioned, I’m now a stronger engineer than I was before becoming a developer advocate. Not only have I obtained new skills (technical, communication, and leadership), but I now have a broader view of the technical space as a whole. I engage with so many engineers from all over the world. From massive multi-billion dollar corporations to scrappy startups. I help them solve their problems, I listen to their stories, I build custom solutions for them. Just like most other developer advocates, I’d be a welcomed addition to any of these engineering teams.

There are also some Developer Relations teams where the developer advocates rotate between advocacy work and pure engineering work thus giving them the opportunity to keep their engineering skills sharp, influence the product, and gain empathy for fellow developers.

Should I become a developer advocate?

If you’re an engineer who enjoys learning new things and sharing your knowledge with the greater community, then YES! Know that every company is different, and experiences may vary. Be sure to seek out an opportunity that piques your interest and will allow you to grow as an engineer.

If you’d like to learn more about developer advocates (and adjacent roles), Dmitry Vinnik, Developer Advocate at Facebook, curated a list of useful resources and some of the best developer advocates in the industry recorded a Twitter Spaces panel discussion.

Hi, I’m Angie (@techgirl1908) and I’m the Senior Director of Developer Relations at Applitools with 26 patents. I’ve gone from creating content in my spare time, to working professionally as a developer advocate, to now growing and leading a department of other developer advocates -- within a matter of five years.

About The
ReadME Project

Coding is usually seen as a solitary activity, but it’s actually the world’s largest community effort led by open source maintainers, contributors, and teams. These unsung heroes put in long hours to build software, fix issues, field questions, and manage communities.

The ReadME Project is part of GitHub’s ongoing effort to amplify the voices of the developer community. It’s an evolving space to engage with the community and explore the stories, challenges, technology, and culture that surround the world of open source.

Follow us:

Nominate a developer

Nominate inspiring developers and projects you think we should feature in The ReadME Project.

Support the community

Recognize developers working behind the scenes and help open source projects get the resources they need.