We had the chance to talk to Transform’s newest intern, Hesham Nawaz. Between navigating a new work environment and making his way through IMDB’s Top 100 list, he developed a MetricFlow Example Repo with the main goal of helping new users start their journey with MetricFlow
Can you tell us a bit about your background and what brought you to Transform?
Hesham: I just graduated from MIT with a double major in math and data science. In the past, I did a couple of different internships at some big companies like Nike and Shopify along with a few different research roles.
In terms of what brought me to Transform, because of my previous internship experiences, I was looking for something different and I wanted to work at a start-up that was impact and mission focused. A while back, I connected with Jordan on Linkedin and I saw that he had started working at a company called Transform so I decided to look into it a bit more. As I started to dive deeper, I was very impressed by the pedigree of the team and the problem that they were solving was something I had encountered in my own work in the past. As I went through the website it seemed like they had really developed an interesting product and I felt like I would learn a lot by joining the company and contributing to the mission. I applied and I went through the interview process and learned even more about Transform and the more I learned, the more interested and the more impressed I was and that’s sort of what brought me here.
What has been the main focus of your time with us so far?
Hesham: I’ve been working on a few different things. My first main focus was just familiarizing myself with all of the tools, software and the work that the company has been doing. The first couple of weeks I just spent absorbing as much information as possible.
After that, my first project was developing a set of Shopify config files that would help process Shopify data using MetricFlow. The next project, was developing a MetricFlow example repo that essentially provides an end-to-end deployment of MetricFow so that anyone can take a look at it, download it and can get started with MetricFlow.
So going deeper into the example repo, what else can you tell us about it?
Hesham: The MetricFlow example repo essentially consists of a end-to-end deployment of MetricFlow which means, from start to finish, a user can download this repository and follow all of the steps laid out there and begin exploring MetricFlow more independently.
In terms of the steps a user takes, they start by installing MetricFlow, and spin up a database in PostgreSQL. Once MetricFlow is set up, they can create a table materialization, specify the configuration for the materialization (what metrics are being used in that table), create the materialization and finally, check that it was created successfully.
We also have an integration with Metabase, which is a pretty popular business intelligence tool, so users can visualize these metrics that they’ve created in MetricFlow in Metabase and create graphs and dashboards.
We also have a Jupyter Notebook that allows you to see how to use MetricFlow’s Python API so you can actually use Python to query the Metrics that you defined in MetricFlow. Since Python is a pretty popular coding language, I think having that API is pretty helpful in making MetricFlow have even more utility for all kinds of users.
This is just a great way for users to get familiar with MetricFlow and understand the core concepts and then from there what users are actually going to do with it is going to be specific to their own company. More mature deployment is going to take some additional work but hopefully by going through this repo users will understand the concepts and can reason what problems they can solve with MetricFlow and what would be needed to really spin this up and run with it for their company or specific use case.
It sounds like the perfect resource for new MetricFlow users, right?
Hesham: Yeah, definitely. It’s important to make it open source because we want to have a low barrier to entry and I think it also encourages other people to contribute and help improve our product. I think this is pretty helpful in furthering our goals in making metrics standardized and improving MetricFlow as much as possible.
What’s the best place for new MetricFlow users to ask questions and learn more about how MetricFlow works?
Hesham: We welcome all to join our official MetricFlow slack community. We’re pretty active over there and you can ask our team and community any questions in our #how-do-I channel. We also host weekly discussion topics related to MetricFlow, metrics and everything in between.
Check out the full example repo here
Join MetricFlow on Github
Join MetricFlow on Slack