How to Create a Software Engineering Dashboard

Software development is moving at a faster pace with larger-scale impact when deploying. In this environment, a Software Engineering dashboard is a great communication tool to track your development process, along with displaying your product performance at a glance. It also fosters engineering best practices of continuous improvements. Let’s dive in to see how to make a great dashboard for a software team.

Metrics important for Software Engineers

Because there is such a wide variety in how some engineering teams develop their product, there is no be-all-end-all set of metrics that all development teams need to track. On a high-level, anyone in your company can see these metrics to follow the development progress. You would also want to track how the product is doing as well. Here are some specific examples of metrics you might want to track on your dashboard:

Agile metrics, or tracking how much work goes into a feature

These metrics are tracked and measured in your agile management tool such as Jira. They include:

Days remaining in a sprint

Issue count/Story points remaining in the sprint

These will track towards creating a burndown chart, showing how much work is left in a sprint, i.e. work committed vs. work completed.

Epic/Release burndown and feature creep

Similar to the previous metric, this is measuring at a longer time duration how much is completed over the release. It can also show how much feature creep (adding a ticket in the middle of a release) occurs in the middle of a release.

Feature metrics

Depending on the features that are in question, you could use something like Google Analytics for your feature performances, as well as monitoring tools like Datadog, or even good logging practices for more internal performance numbers. The latter include:

Web Latency and page load

Application server load

Queue depth and latency

This is applicable when you are using message queues, and its depth can indicate performance bottlenecks

Page view/app usage breakdown

Percentage 4xx/5xx/2xx response tracking

These are the HTTP status codes responses and can indicate bugs or interrupted service

Longest duration/heaviest load API endpoints

Number of critical bugs outstanding

Continuous integration and delivery metrics

Stability of builds

Test passed statistics of builds

Allows you to track to see if the builds are improving or regressing

How to make a Software Engineering Dashboard

To make a dashboard, you would need to connect the data sources into your BI tool. For example, this could be Jira for Agile tracking, Google Analytics for product analytics, Github for issue/feature request tracking, and Heroku for deployment analytics.

Here are the steps to connect the Data Sources in a BI tool like Chartio:

Step 1: On the top menu, select Data Sources. Click on the +Add a Data Source button.

Step 2: Select the Data Source you need. Chartio works with many different data sources, which you can check from our partner website here. Once you’ve connected your data source, it’s time to create the graphs from these data sources. Wonder what chart you should use? Check out Chart Type Decision Tree.

Best practices for a Software Engineering Dashboard

Overall, the dashboard should be clear and straightforward in its intent, so choose the right charts to explain your data appropriately. Be clear on who would be using the dashboard, which in this case is full stack software developers. The dashboard should allow you to identify trends of your product and development process, and allows teams to take action from real-time data. Also look out for data biases that your reader might encounter.

Use the right visuals, popular color templates, such as ‘Red, Amber, Green’ which are great for showing the status progress of a task or project. Also, make it clear where to look on the dashboard. Creating sections can emphasize some elements and have other metrics in the background to back it up. Title the charts consistently and make sure acronyms are used appropriately.

Remember, the best dashboards are always being tinkered and tweaked to improve the dashboard. Removing non-essential metrics is as important as adding new metrics that are missing; clarity of focus is important. Have snapshots of your dashboard so you can track both how you’re doing, as well as a collection of your previous dashboard designs.

About Jonathan Kurniawan

Hi! I'm Jonathan Kurniawan. I have 4 years of experience working as a software engineer at Dolby on various different products. I'm currently pursuing my MBA from Hult International Business School and received my Bachelor in Computer Science from University of New South Wales, Australia. I'm excited to share my knowledge at the Data School by Chartio.