augmentcode / usage-analytics
Usage Analytics Dashboard - Frontend Engineering Interview
README
Usage Analytics - Take-Home Assignment
Time: 1 hour (we respect your time - don't spend more than this)
Build a single-page "Usage Analytics" view that helps us answer:
- How many Daily Active Users (DAU) over a date range?
- Which organizations were most active?
Setup
# Start the API server
cd server
npm install
npm start # Runs on http://localhost:3001
# Build your frontend (use any framework/tools you prefer)
mkdir frontend && cd frontend
# ... your setup
APIs
GET /api/metrics/dau
Returns daily active user data.
GET /api/metrics/top-orgs
Returns organizations ranked by activity.
Call these endpoints to explore what data is available.
Requirements
Build a view that helps answer these questions:
- "How is our DAU trending over time?"
- "Which organizations are most active?"
What Users Need to Do
- View DAU trends over different time periods
- Identify and explore top organizations by activity
- Find specific organizations quickly
- Understand the data even when things go wrong
- Interact with the system smoothly at any data scale
Nice-to-Haves
- Export: "Copy CSV" functionality for the current view
- Accessibility: keyboard navigation, visible focus states, screen reader support
Quality Expectations
- Handle real-world data volumes gracefully
- Provide clear feedback during loading and errors
- Make the interface intuitive and responsive
- Consider accessibility and data export needs
Note: Think about what "good" looks like for each of these. You'll need to make product decisions.
Deliverables
- Working application - We should be able to run it
- Tests - At least 2 meaningful test cases
- AI_NOTES.md - Document how you used AI (prompts, edits, verification)
- README.md - Document your product decisions:
- What features did you prioritize and why?
- What trade-offs did you make?
- What would you do differently with more time or resources?
Submission
- Create a PR with your changes
- Fill out the PR template
- We'll review and schedule a follow-up discussion
Notes
- Use any frontend framework (React, Vue, Svelte, vanilla JS, etc.)
- The backend code is available and modifiable if you choose to
- Focus on product thinking: What would make this useful for real users?
- We value thoughtful decisions over perfect implementation
- Document your reasoning - we want to understand your thought process
Questions?
If anything is unclear, please ask! We want you to succeed.
