Developer experience ideation toolkit
Developer Experience (DX) encompasses many things. If you have a developer focussed product, like an API or SDK, it's the experience from when a developer first hears about it, through to using it, and eventually choosing not to use it any more.
Throughout that journey there's a multitude of things to think about. How should our product work? How will people learn how to get started? How will they be on-boarded? How will they get the most out of the product? How will they report problems? How will they learn about updates?
Unfortunately, more often than not, people think that DX refers almost exclusively to documentation. Dry, uninteresting documentation, thrown together shortly before the product is released or updated.. But it doesn't have to be that way!
Treating DX the same way that you'd treat the user of any product will yield far more useful and elegant products, as well as having a more engaged developer community using it. To do that, all you need is a little structure to get you started.
In this post, I'm sharing my tried and tested approach for thinking about DX. I've applied this to API design, documentation design, event management, support processes, content strategies, and more. I've found it to be an effective way to kick off ideation in this space, and a great way to get discussion started.
Read on to see how I use the DX Ideation Toolkit, what's in there, and how you can download it. Please share your feedback and thoughts in the comments!
How to use this
The toolkit isn't a set of out-of-the-box answers to common questions. It's a way to start focussed, fruitful conversations that lead to insights you can build on. It goes something like this:
- Agree what it is you're focussing on. Is it on-boarding? Documentation, perhaps? Whatever it is, don't go too broad, and make sure that everyone agrees.
- Think about the people involved in this experience. The toolkit gives you 11 persona archetypes to get you started, along with a short conversation starter for each. For example, a Penetration Tester who says "I make a living out of finding weaknesses in your product". If you have existing personas, apply them here. If you don't, explore each of these and add important attributes, driven by data if you have it.
- Think about the situations and emotional states people will have when they are involved in this experience. The toolkit gives you 10 situations to get you started, again with something to strike up a conversation. For example, a time when someone may be Stressed; "I need to use this, but I have competing priorities. I may not have the skills or support I need to use this properly." Add more to make it relevant to your product.
- For each persona and situation, think about the specific goals and needs at play. Document them and group similar needs together. Try to prioritise those needs based on what's most important or valuable to your personas.
- Think about how the current experience caters to those needs. Draw user journey maps if you can.
- Armed with this knowledge, now is the time to start to ideate around the question, "How can we improve the experience to better meet these needs?"
What's in the DX Ideation Toolkit?
Welcome: A summary of what's in the kit.
Personas: Several common personas relevant to DX discussions, along with some conversation starters for each.
Situations: Several common situational/emotional states common to DX discussions, along with some conversation starters.
Template for Personas/Situations: A sheet of empty cards so that you can create more personas or situations to reflect your own customers/users and product(s).
Example exploration: An example of how you might explore the needs for personas in each of the situations. In this case, the example is for API documentation.
Example grouping: An example of how you might group the needs that you uncover.
Template: Exploration (1 persona): An empty exploration template for a single persona.
Template: Exploration (2 personas): An empty exploration template for two personas.
Checklist (all personas): All of the personas and situations in a table, so that you can keep track of what you have and haven't yet covered.