Level 8 / Project 14 - User Journey Tracer¶
Home: README
Learn Your Way¶
| Read | Build | Watch | Test | Review | Visualize | Try |
|---|---|---|---|---|---|---|
| — | This project | — | — | Flashcards | — | — |
Focus¶
- Event stream processing and session reconstruction
- Session splitting by inactivity timeout gaps
- Funnel analysis with stage-to-stage conversion rates
- Drop-off detection to identify UX bottlenecks
- Group-by aggregation patterns for analytics
Why this project exists¶
Understanding how users flow through a system is essential for debugging, optimization, and product analytics. Why do 40% of users abandon checkout at the payment step? Where do new users get stuck during onboarding? This project builds a journey tracer that reconstructs user sessions from raw event streams, identifies drop-off points, and computes conversion funnels — the same pattern used by Amplitude, Mixpanel, and custom product analytics systems.
Run (copy/paste)¶
Expected terminal output¶
{
"journeys_count": 5,
"funnel": {"stages": [...], "conversion_rates": [...]},
"drop_off_points": [...]
}
7 passed
Expected artifacts¶
- Console JSON output with journey analysis and funnel data
- Passing tests
- Updated
notes.md
Alter it (required)¶
- Add a
session_timeout_minutesparameter toreconstruct_journeysthat splits sessions by inactivity. - Add drop-off analysis: for each funnel stage, report what percentage of users left.
- Add a
--userfilter flag that traces only a specific user's journeys.
Break it (required)¶
- Pass events with unsorted timestamps — does
reconstruct_journeysproduce correct sessions? - Create a funnel with stages not present in any events — what does
analyze_funnelreturn? - Pass an empty event list — does the journey reconstruction handle it gracefully?
Fix it (required)¶
- Sort events by timestamp inside
reconstruct_journeysbefore grouping. - Return 0% conversion for funnel stages with no matching events.
- Add a test for empty input and unsorted timestamps.
Explain it (teach-back)¶
- What is a user journey and how does event-based tracing reconstruct it?
- How does funnel analysis measure conversion between stages?
- Why does session splitting use a timeout gap between events?
- How do analytics platforms like Amplitude or Mixpanel implement similar journey tracing?
Mastery check¶
You can move on when you can: - explain user journeys, sessions, and funnel analysis with examples, - add a new funnel stage and trace it through real event data, - describe the difference between session-based and user-based analytics, - explain how drop-off rates help identify UX problems in a product.
Related Concepts¶
| ← Prev | Home | Next → |
|---|---|---|