ยท

ยท

Using user journey mapping to build a better developer workflow

Using user journey mapping to build a better developer workflow

Using user journey mapping to build a better developer workflow

Katie Hindson

Katie Hindson

ยท

User journey mapping helped us uncover some really important problems our users were facing. ๐Ÿ•ต๏ธโ€

One of my favourite product mantras is:

What problem is this solving?

If your product isnโ€™t solving a problem, then itโ€™s probably not a great product. So, to build great products, we need to be able to identify the problems our users are facing.

One tool we can use to do this is something called โ€œuser journey mapping.โ€ The jist of it is that you define your users, map the jobs that theyโ€™re responsible for, then identify their biggest painpoints in completing these jobs.

And just like that, youโ€™ve got a bunch of really relevant problems that you can be solving for your users.

In our last offsite, we did this at Lightdash. Not only did we identify a bunch of new problems we hadnโ€™t thought about but we also learned a LOT about our users.

Over the next few months, we thought a lot about the โ€œdeveloper workflowโ€ for analytics engineers.

We ended up trying to improve the experience of developing between dbt and your BI tool. We came out of this User Journey Mapping exercise all feeling quite similarly: the developer experience for data teams really sucks.

There are so many tools that donโ€™t talk to each other, so much waiting around, and no way to really โ€œcheck your changesโ€. So, we decided to take on a pretty big goal of โ€œimproving the developer workflow in Lightdash.โ€ Weโ€™re excited to announce that itโ€™s been launched today!

But, beyond this new and exciting feature release, we thought it might be useful for us to share how we got here using User Journey Mapping so that hopefully you can use it to help build better products too :)โ€

Hereโ€™s a template for running a โ€œUser Journey Mappingโ€ session with your team:

If youโ€™re interested to hear a bit more then read on! Weโ€™ll go through each of the steps in more detail and talk about some examples of how this went for coming up with the โ€œdeveloper workflowโ€ at Lightdash.

โ€If you already know what youโ€™re doing and just want to dig right into it, weโ€™ve made a template for running a User Journey Mapping session with your team:

Running a User Journey Mapping Sessionโ€

Who is the user? (10 minutes)

By the end of this, you should have a clear profile for the users youโ€™re building for.

This is kind of like a โ€œwarm-upโ€ for everyone to get into the same headspace and to make sure that weโ€™re all on the same page with who weโ€™re building for early on in the process.

Youโ€™ll split up into teams and each team will try to come up with a profile for your productโ€™s user.

Some more questions that can help you are:

  • โ€œWhat tools do they use?โ€

  • โ€œIs there a single group/title that these people fall into? (e.g. corner stores, product managers, teenagers in Canada)โ€

  • โ€œWho are this personโ€™s โ€˜customersโ€™?โ€ (If talking about work-related tools)

  • โ€œWhat does โ€˜successโ€™ look like for them?โ€

By the end of this, you should have a clear profile for the users youโ€™re building for. This can be bullet points or you can make them into an actual person with a name and a stock image. Go crazy.

Hereโ€™s an example of the user profile we came up with for one of our Lightdash users: an โ€œanalytics engineerโ€.

What are the userโ€™s main โ€˜jobs to be doneโ€™? (20 minutes)

In this step, youโ€™re going to come up with the jobs/tasks that your user needs to complete to be successful.

For example, if I were an analytics engineer some of my jobs could be:

  • Build data models

  • Get context about data from engineers

  • Fix SQL latency/how long models take to build

  • Write documentation

  • Setup test failure monitoringโ€

We spend the first 10 minutes independently writing all of our ideas on sticky notes. Then, we come together, go over our notes, and group common themes for the last 10 minutes.โ€โ€

Hereโ€™s an example of the main user jobs we came up with for our โ€œanalytics engineerโ€ user:

How are they currently trying to complete these jobs? (20 minutes)

By the end of this, youโ€™ll have a bunch of actions and tools written out for your userโ€™s most important jobs.

Depending on the number of job groups you came up with above, you can split into teams and focus on one or two of them, or split and conquer all of the groups.

Whatever you decide, the next thing to do is take our trusty sticky notes and come up with the actions our users take to complete these jobs. These steps donโ€™t need to be too detailed, but you should try to include what tools theyโ€™re using.

For example, for analytics engineersโ€™ job of โ€œbuild data modelsโ€, weโ€™d write steps like:


โ€Figure out what are the join keys / the columns you need from your warehouse (data warehouse + maybe looking in your dbt project?)

  • Write your SQL (in a text editor or dbt cloud)

  • Check that your SQL runs (in dbt or BigQuery SQL Editor)

  • Fix broken SQL (in Google BigQuery or some other SQL runner with a linter)

  • Check the output table (preview in BigQuery/data warehouse)

  • Commit + merge your changes to GitHub

  • Rerun the data models in dbt in prodโ€

By the end of this, youโ€™ll have a bunch of actions and tools written out for your userโ€™s most important jobs.

Hereโ€™s all of the steps and tools that we actually came up with for โ€œbuild data modelsโ€:โ€

What are the pain points? (30 minutes)

After this exercise, you should have a list of the biggest pain points that your users run into in completing their jobs and you should know at which steps theyโ€™re running into these.

Once you have all of your actions written down for your userโ€™s job(s), youโ€™ll go through them as a team and talk about the things that suck in this current workflow (a.k.a. pain points).

Pain points tend to fit into 4 groups, so you can keep these in the back of your mind while youโ€™re trying to come up with some examples:โ€

(source: https://www.revechat.com/blog/customer-pain-points/)

After this exercise, you should have a list of the biggest pain points that your users run into in completing their jobs and you should know at which steps theyโ€™re running into these.

For example, for analytics engineerโ€™s job of โ€œbuild data modelsโ€, weโ€™d write steps like:

  • Youโ€™re switching between too many tools - itโ€™s time consuming!

  • Thereโ€™s no way to check that your SQL will run in your text editor.

  • The link between โ€œchanging something in dbtโ€ and โ€œseeing it in your BI toolโ€ is really complicated (error-prone and time-consuming).

Where do we come in? (20 minutes)

At the end of this exercise, you should have split up your pain points between โ€œones we could improveโ€ vs. โ€œones were not going to try to improveโ€.

Okay, weโ€™re at the end now. Weโ€™ve got our user profile, their jobs, and their pain points. The final step is to ask ourselves: โ€œwhere do we come in?โ€

More specifically, weโ€™re going to go through all of the pain points as a team and decide if trying to fix these is in or out of scope for our product. You might have some ideas for how to fix these too! Feel free to pop those ideas onto sticky notes and add them in (but itโ€™s not required).

At the end of this exercise, you should have split up your pain points between โ€œones we could improveโ€ vs. โ€œones were not going to try to improveโ€.

For example, with the pain points in โ€œbuild data modelsโ€, we decided that any of the ones happening in dbt were out of scope for us to improve (since trying to improve dbt would probably not be the best use of our time).

We used check/cross emojis to indicate this, then we wrote some ideas on what we might be able to do to actually improve the relevant pain points:โ€

Now, you have a list of really relevant problems to solve and opportunities where you could make improvementsโ€

Once youโ€™ve completed all of the steps in mapping your user journey, youโ€™ll end up with a list of pain points that you can improve for your users. This is the ideal starting point for deciding on what you want to work on next that will have a big impact on your users.

It can be a bit overwhelming to just have a list of problems that all seem super relevant - where do you even start? If youโ€™re feeling a bit like this, Iโ€™d highly recommend checking out the RICES framework that we use at Lightdash to prioritize the ideas we come up with during planning. This can help you decide on which ideas are the most relevant and have the highest impact so you can start working on them first.โ€

And that's all we've got on User Journey Mapping! We hope that this approach is helpful to some of you in trying to solve your next big product problem. If you're interested in learning more about how we're building Lightdash, come and join us in the new Lightdash Community Slack (it's where all the juicy product secrets are shared ๐Ÿคซ).

Ready to free up your data team?

Try out our all in one open, developer-loved platform.

Table of contents

Table of Content

Join our newsletter to be en-lightened

ยฉ 2026 Telescope Technology Limited. All rights reserved.

Join our newsletter to be en-lightened

ยฉ 2026 Telescope Technology Limited. All rights reserved.

Join our newsletter to be en-lightened

ยฉ 2026 Telescope Technology Limited. All rights reserved.