Data Integration
To create a dashboard that truly delivers insights, I start by integrating data from all relevant sources—whether it’s databases, APIs, or flat files. This ensures that your dashboards provide a unified view of your operations. I also leverage tools like dbt for ETL processes to prepare your data for visualization. My goal is to eliminate silos and provide a comprehensive data foundation, enabling dashboards that are not only accurate but also timely. By automating data pipelines, I ensure your dashboards always reflect the latest data with minimal manual intervention.
Interactive Visualizations
Static dashboards are a thing of the past. I design dashboards with interactivity in mind, using both frameworks and tools, such as Python, jQuery, Tableau, Looker, and R to suss out the insights your team needs to make quality decisions. Whether it’s drill-down capabilities, dynamic filters, or hover-based tooltips, I make sure users can explore data on their terms. This level of interactivity empowers stakeholders to uncover insights that might be hidden in traditional reports. For example, a marketing dashboard could allow users to filter campaign performance by region, channel, or time frame, turning raw data into actionable intelligence.
Custom Metrics and KPIs
Dashboards are only as useful as the metrics they track. I work with you to define custom KPIs that align with your business goals. Whether it’s revenue growth, conversion rates, or user engagement metrics, I ensure your dashboards focus on what matters most. Using tools like Looker’s LookML and Tableau calculated fields, I customize metrics to reflect your unique business logic. The result? Dashboards that not only display data but also drive decisions. For example, an e-commerce dashboard might include metrics like average order value and customer lifetime value, tailored specifically to your needs.
Scalability
As your business grows, so will your data. I build dashboards with scalability in mind, using tools like Python’s Pandas for large datasets or Looker’s modeling layer to handle increasing complexity. Whether you’re tracking the performance of a small marketing campaign or managing operations for a global organization, my dashboards are designed to grow with you. Scalability ensures you won’t outgrow your dashboards, saving you time and resources in the long run.
Portfolio
Tableau
Although all dashboard tools are variations on a theme, my personal favorite is Tableau because of its ability to create highly dynamic dashboards. Below are some samples of my work.
Python
Although Matplotlib is the de facto standard and I’ve worked with it, Plotly is my favorite Python graphing library because it’s interactive visualizations are very elegant. I’ve customized them so much, I have an 86-page document with notes, screenshots, and example files so that I can easily rinse and repeat.
SQL
I think SQL might be my fave programming language because of how rewarding it is to clean, transform, and massage data before it even hits the dashboard tool du jour. I especially enjoy creating segments on the fly that I can later use as an additional dimension in a chart and/or filter in a dashboard. Below are a few samples of some of the SQL queries I’ve written over the years.
Note: I normally comment out my code like it’s my job, but Tableau chokes on SQL code with comments and then flips on its back and wants a belly rub. 🙄 I now spawn off tables that I set to refresh on a regular cadence and reference the table in my dashboards to avoid this issue, but I still need to go back and clean up my old code.
dbt Demo (1)
Because of the sheer number of redactions that would be required to share my dbt work with clients, I created a demo project using publicly available data in BigQuery. I demonstrate:
- A data source YAML file that dictates the tests (i.e., constraints) to run on select columns to ensure data integrity.
- Multiple models of varying complexity (i.e., staging, intermediate, and mart).
- The inclusion of a seed file to pull in country names (the data sources just had ID and who knew the country code for Austria was AT).
- Macros to merge and sum 20 columns using Pythonic logic in a Jinja template.
- The creation of dbt’s sexy lineage graph to visualize your data pipeline.
Let’s Chat 📞
If you’re interested in learning more, you can request a proposal or ask questions via the form below. Or grab some time to talk about your unique needs.
Image Credit: Felix Mittermeier