stratascratch
  • Interview Questions
    • Interview Loops
    • Analytical
    • Algorithm
    • ML Coding
    • Stats Coding
    • Visualization
    • Concept
  • Data Labs
    • Discover
    • Your Notebooks
  • Mock Interview
  • Learn
  • Blog
  • Pricing
  • About
Log in
  • Interview Questions

    • Interview Loops
    • Analytical
    • Algorithm
    • ML Coding
    • Stats Coding
    • Visualization
    • Concept
  • Data Labs

    • Discover
    • Your Notebooks
  • Mock Interview
  • Learn
  • Blog
  • Pricing
  • About
Log inSign up
Back to Mini Analyses
  1. Assignment
  2. Your Solution
  3. Solution
  4. Solutions from Users
  5. Discussion

Revenue by Category

You must be logged in to download the datasets

Kohl's: Report net revenue by product category for the summer season.

Assignment

Merchandising wants the summer revenue split by category so they can plan next season's buying, and the number will be quoted in the planning meeting. They have shared two exports from the warehouse: the sales for the season, and the product table the reporting layer joins to.

Deliverables

  • Total net revenue for the season, and the split by category.
  • Which category led the season, and how much confidence you have in the split.
  • A short closing report for merchandising, covering the figures and anything they should fix or be careful about before the number is quoted.

Data Description

sales.csv has one row per sale:

  • sale_id
  • product_id
  • sale_date
  • quantity
  • net_revenue_usd

products.csv is the product table the reporting layer joins to:

  • product_id
  • product_name
  • category
  • valid_from - the date the row took effect
  • is_current

Practicalities

You can solve this in Python, SQL, or a mix of both — StrataScratch notebooks support both languages in the same notebook.

Assume this data comes directly from the warehouse and hasn't been cleaned, so review it carefully before relying on the numbers. When something looks off, work out what it is and decide how to handle it; when a definition or a final decision is genuinely ambiguous, choose a reasonable option and explain why. There's often more than one valid way to compute a result, so explain the approach you take and the reasoning behind your choices.

What's assessed: your results, and how clearly you explain what you see in the data and justify the choices you make.

This question is part of an interview loop

See the full interview round by round, with questions for each stage.

E-commerce & retail · Analytics EngineerE-commerce & retail · Data Engineer