See all posts

7 min read

What is developer experience?
Blog
Community
Oct 20th, 2022

What is developer experience?

The definition of ‘developer experience’ is a bit nebulous. At a high level, it encompasses any event that leaves an impression on a developer. Most often, these events include any interactions between your product and your documentation.

The definition of a good developer experience, on the other hand, is a lot more straightforward. A good developer experience is one in which developers can get their questions answered in a timely manner, onboard to new tools quickly, and spend more time coding.

Developers, like any other demographic, want to feel heard, understood, and supported. In this post, we’ll cover the elements of developer experience in detail and explain why developer experience matters.

What is developer experience?

Essentially, “developer experience” (or DX) is a term for creating an environment where a developer can do their best work. This environment includes the tools and platforms the developer uses across planning and production, as well as the culture in which the developer works.

Everything from SDKs, Getting Started guides, product onboarding flows, solution pricing pages, documentation, reference guides, product changelogs, and developer communities contribute to the holistic developer experience.

Who is responsible for developer experience?

Depending on the organization, one or more members of the product team will be responsible for the developer experience. Additionally, companies may have a developer relations or developer experience team that supports and advocates for developer audiences.

Some organizations may also have a specific engineering function responsible for aspects of the developer experience, including SDKs and code samples.

Elements of developer experience

The primary elements of developer experience include documentation, onboarding, APIs, and community. Each element plays a crucial role in creating a positive environment for developers to do their best work.

Onboarding

A good onboarding experience feels seamless and intuitive. Developers who have a positive onboarding experience can start coding quickly, spend less time getting acclimated to new tools, and spend more time doing the work they care about.

There are a few factors that play into a positive onboarding experience:

  • Documentation: Docs that include a good Getting Started guide answers questions for developers up front, such as how long it will take to implement a certain solution or tool, and what languages and frameworks are required to use the tool.
  • SDKs or Code Libraries: SDKs (software development kits) or libraries are installable software packages developers use to build apps within your product. SDKs and code libraries should be configured according to your audience and their preferred programming languages.
  • Self-serve product sign-up: Ensuring developers can sign up for a free-tier or trial account themselves without having to go through a sales rep is always a good way to make their experience smoother and faster.

Documentation

Developers will look at your docs right away to assess whether your product appropriately serves their needs. Here’s a few things you’ll want to consider when building and displaying your documentation:

  • Docs should be easy to find. Developers don’t want to waste time searching for documentation or filling out forms to get access to docs. Making documentation easy to find by displaying it on your main navigation bar will make their lives a bit easier.
  • Docs should be thorough and current. Consider your audience when writing and publishing documentation: What kind of questions might they have? What do they need to know before using your product?
  • Docs should be written in simple, clear language. Keep the language and tone of your documentation straightforward and concise. The easier and clearer the language, the more questions you’ll be able to answer for developers.
  • Docs should be interactive. Interactive docs and cURL commands enable developers to run live API calls within your documentation. This capability provides a great developer experience: they can see what data an API accepts and returns, create code snippets, and create an API key to get up and running fast.

APIs

Your API must be reliable and contain clear reference guides to minimize complexity and disruptions for developers. Specifically:

  • Maintain your reference guides. Developers will want to see that your reference guides are up-to-date. They’re going to look to them as a single source of truth for your API, so these guides must be precise.
  • Update your product changelog and API. Historical transparency with uptime and latency are super important for providing visibility into your API’s stability. Developers need to be able to see any recent changes to make sure their app is up-to-date and secure. Access to an updated changelog also enables developers to see new features as they’re released.
  • Consider the coverage of the API relative to the product. APIs should not be a 1:1 of what the database structure is or some other internally-facing construct. They should be built with consideration to the jobs-to-be-done by developers.

Community

Developers need a place they know they can go to get their questions answered and receive support if they run into snags. Building a community can provide the ideal environment for developers to learn more about your product, learn from each other, and solve problems quickly.

A good community has the following attributes:

  • It’s easily accessible. Companies frequently leverage public forums or platforms, including Slack and Discord, to host their community. Hosting communities across these apps is a good idea for companies that want to meet developers where they’re already hanging out online.
  • It’s responsive. Ensuring a member of your developer relations team, product team, or engineering team is readily available to answer questions and offer support in a timely manner is key to earning trust among community members and providing a positive developer experience.
  • It offers relevant content. Developers are self-starters who love to learn. Providing informative, relevant content to your audience through your community can help them reach their own professional and personal goals.

Why developer experience matters

A good developer experience is the first step to adoption and the flywheel to community-led growth. A bad developer experience can prevent even the most driven developer from implementing your product or tool. It is the risk of churn during trial before value can even be seen.

With a good DX, developers can get onboarded to new tools quickly, start writing code fast, and seamlessly enter a flow state where they can do their best work. If they have questions, they can reference documentation or turn to the relevant developer community for support.

A bad DX, on the other hand, is clunky, unintuitive, and intrusive. Developers that are having a bad experience can barely follow the Getting Started guide, run into snags during onboarding, lack thorough documentation, and have no developer community to turn to for support.

Teams across product, engineering, community, and even customer success & marketing must work in tandem to ensure a smooth, positive developer experience.

Developer experience & community engagement

An active, vibrant community can help your company take its developer experience to the next level. While documentation, API reliability, and onboarding are important, a good community will transform developers into brand loyalists and product evangelists.

Developers will turn to your community forum to answer their questions, upskill, and learn more about your product. Encouraging developers to form relationships with each other, explore new and more efficient ways to leverage your product, and find the answers they need to do their best work will set your community and your brand apart.

How Common Room can help

Common Room is an intelligent community growth platform that gives companies real-time intelligence, context, workflow automation, and data insights to accelerate developer community growth against measurable goals.

The platform pairs machine learning-powered insights with engagement and reporting tools to help DevRel teams and community managers build, manage, and measure fast-growing communities.

You can leverage automated workflows to deliver messages to specific users at the right time, customize automated reporting to keep track of your community’s health, identify areas for growth, and track the conversations and activities that are most impactful in your community.

To intelligently engage and grow your community, try Common Room for free today. Looking for more about developer relations? Check out our blog post on Your First 30 Days in a New DevRel Role and connect with 1000+ community and DevRel leaders to share expertise and ask questions in the Uncommon community Slack.