How would you build a weekly active user dashboard?
This tests your ability to translate a business request into a technical plan. A good answer defines "active," identifies necessary data (user ID, timestamp, event), outlines the data modeling, and explains the BI tool implementation.
What's really being asked
This question tests your ability to think end-to-end about a data product. It's not just about SQL. It's about translating a business need ('track WAU') into technical requirements. The interviewer wants to see if you can define the metric, identify the source data, model it for performance, and then implement it in a BI tool. It separates candidates who just write queries from those who build and own data systems.
The full answer
A strong answer has four parts. First, clarify the requirements: what exact user action signifies 'active' for this specific feature? Is it a button click, a page view, or a specific API call? Second, identify the data needed: a raw events table with at least a unique user ID, a precise timestamp, and an event name or type. Third, describe the data modeling. This involves creating a clean, aggregated table (e.g., a daily active user fact table) via an ETL or dbt job to make BI queries fast and cheap. This table might pre-calculate daily active users for the feature. Fourth, explain the BI tool implementation. In Looker or Tableau, you would connect to this new fact table and create a metric that calculates a rolling 7-day distinct count of user IDs.
The mistakes people make
A major red flag is jumping directly into writing a complex SQL query against a raw production database. This shows a lack of concern for performance, cost, and scalability. Another weak answer is being vague about the data source, just saying 'we need the user data.' A senior engineer names the specific tables and fields (e.g., 'the frontend_events table with user_id, timestamp, and event_name columns'). Finally, failing to define 'active' with the product manager is a sign of not thinking like a product-minded engineer.
What usually comes next
How would you backfill this data for the past year? How would you handle changes in the definition of 'active'? How would you ensure this dashboard is performant if the events table has 500 billion rows? How would you calculate Monthly Active Users (MAU) and the WAU/MAU ratio to measure stickiness?
A concrete example
To get WAU for a 'video play' feature, I'd first ensure we have an event like video_played logged with user_id and timestamp. I'd run a daily dbt model that scans the raw events, filters for video_played, and creates a table fct_daily_feature_active_users. In Looker, I'd define a measure using a count_distinct on user_id and use a rolling timeframe to create a 7-day active user count. This pre-aggregation avoids querying a massive event table for every dashboard load, keeping it under a 2-second load time.
Interview question
When building a Weekly Active User (WAU) dashboard, which initial step is most crucial for ensuring its accuracy and long-term effectiveness?
- a.Immediately writing a complex SQL query to count distinct users over 7 days from the raw events table.
- b.Clarifying the precise definition of "active" with stakeholders and identifying the specific user actions.Correct
- c.Setting up a new BI dashboard and connecting it directly to the main production database.
- d.Creating a comprehensive data dictionary of all user-related tables and fields in the data warehouse.
Why? this is the answer
The card emphasizes that clarifying the exact definition of 'active' with stakeholders is the first and most crucial step to ensure the dashboard is accurate and relevant to business needs. Jumping directly to writing SQL against raw data (Option A) is highlighted as a common wrong answer due to performance, cost, and scalability concerns, and also risks calculating the wrong metric if 'active' isn't properly defined.
Just read this? Test yourself on what you have been reading.
Read the original → marketplace.looker.com
Put your scrolling time to good use
Learn one idea, try a quiz and save useful cards for revision. Tezvyn makes it easy to learn and stay current in your tech field, a few minutes at a time.
The iPhone app is on the way
We are building it. Until it lands, nothing here is held back from you: every interview card, your saved cards, streaks and the job board all work in Safari, plus hundreds of free practice quizzes of thirty questions each. Sign in and it all carries over to the app the day it arrives.
Want it as an icon? Tap Share at the bottom of Safari, then Add to Home Screen. It opens full screen and the cards you have read stay available offline.
We are hiring for this. Open roles that interview on analytics — each one lists the topics its interview covers.
See open roles