Developer Advocacy with Open Distro for Elasticsearch

Fri, Oct 09, 2020 · Kyle Davis
This post was imported from the Open Distro For Elasticsearch blog, a predecessor project of OpenSearch. Information reflected in this post may not be current or accurate.

While Open Distro for Elasticsearch is an open-source, community-led project, we are gaining another full-time person devoted to the project (me). Before I start contributing and interacting with the community, I wanted to take the time to introduce the role and myself.

What is a developer advocate?

That’s a good question. Developer advocates are a link between a product or project and the technically-minded people who use it. While the title includes the word “developer,” it is a very broad application of the term – it could be people who write software (software developers), those who run/administer the software (operations, devops practitioners, site reliability engineers, database administrators), or other technical end-users (data scientists, analytical professionals). Likely, if you are reading this, then you are someone that will work with a developer advocate like me.

The other term in the title is “advocacy.” Advocacy here has two meanings:

  • To advocate for the project. Developer advocates have goals oriented to the success of the project, and as such, want it to grow and become more mature. This might take the form of presenting on the project at conferences, writing about the project and helping guide the outward profile of the project in the larger community. You can think of this as growing the pie – more users, more contributors, and more awareness.
  • To advocate for the developers. Developer advocates are users themselves of the project and don’t regularly contribute to the core of the software. They, however, work closely with the team that is contributing directly to help make decisions that are best for the users. In this way, developer advocates need to listen to and have deep empathy for the users and how they utilize the project.

The nice thing about these two meanings is that they are not in conflict but usually feed naturally into each other.

There are similar roles with similar titles (“developer evangelist”, “developer relations engineer”, etc.) and, outwardly, seem to be doing similar tasks. The key difference between these roles and a developer advocate is that advocacy places equal weight on listening/empathy and success oriented tasks. Sometimes, however, these are just titles and the actual practice is the same, however we chose developer advocate in reference to Open Distro for Elasticsearch very intentionally – this project is open source and is made of community and people as much as code – listening and empathy are key.

Who am I?

I am a long time software developer who loves working with data. Most recently, I was doing advocacy for Redis and was involved with the launch of a Redis-based search engine. When I felt like I had done all I could in that role, I was thrilled to find out about Open Distro for Elasticsearch. Search and log analytics are endlessly fascinating to me, so I feel right at home on this project. I live in Edmonton, Alberta, Canada, and prior to the pandemic, I was on-the-road nearly half the time. So while Edmonton is home-base you’re likely to find me just about anywhere in the world (once when travel is safe again, naturally).

What’s next?

You will probably see me start to participate in the community meetings, on stackoverflow, in the forums, or on github. In addition, may also get some direct communication from me as I start building the community. Feel free to reach out at kyledvs@amazon.com or on twitter @stockholmux or find me on GitHub. Super excited to get to know everyone!