Context
This article is a real walk-through (with details anonymized) of how we work on a feature during a sprint. The goal isn't to show that AI is "magic" — but to give an honest picture of what this work actually looks like.
**Feature**: Analytics dashboard for a SaaS platform — displaying revenue metrics, user growth, and churn rate with date range filters and CSV export.
**Timeline given**: 2 days.
**Team involved**: 1 developer + AI agent.
Day One: Foundation
**Morning (2 hours) — Planning & Context Setup**
Before writing code, the developer takes time to:
1. Breakdown requirements into specific tasks:
- API endpoint for metrics with date range filtering
- Chart components (line chart for growth, bar for revenue)
- Filter UI with date picker
- Export CSV functionality
- Loading states and error handling
2. Update context file with relevant information:
- Existing database structure (users, subscriptions, transactions tables)
- Existing API patterns used in this project
- Already installed chart library (Recharts)
3. Create test scenarios for acceptance criteria:
- API returns correct data for the given date range
- Chart renders with correct data
- CSV export contains all expected columns
- Filter changes trigger data re-fetch
**Mid-day (3 hours) — Backend**
With the context prepared, the developer asks AI to generate:
- Optimized database queries (developer reviews for N+1 issues and missing indexes)
- API endpoint with proper validation and error handling
- TypeScript types for response data
Result: ~80% directly usable. ~20% needed adjustment — especially query optimization specific to our dataset.
Developer focus here: reviewing the query plan, ensuring no data leaks between tenants, and validating that edge cases (new users without data, too wide date range) are handled correctly.
**Afternoon (2 hours) — Frontend skeleton**
AI generates basic components: chart wrappers, filter UI, loading states. Developer reviews for: accessibility basics, consistency with the design system, and ensuring correct component structure for reusability.
Day Two: Polish & Testing
**Morning (2 hours) — Test implementation**
With test scenarios written on day one, AI generates test code. Developer reviews to ensure:
- Tests truly test what is important
- Mocks are not too naive (e.g., mock database behaving differently from real database)
- Most important edge cases are covered
**Mid-day (2 hours) — CSV export & polish**
CSV export is implemented with AI. A bug is found by a test: a comma character in a name field caused malformed CSV. AI fixed it with proper quoting. This is an example where TDD truly works — a bug that might be missed in manual testing was caught automatically.
UI Polish: loading animations, empty states, responsive layout. AI handles most of this, developer reviews from a UX feel perspective.
**Afternoon (1.5 hours) — Final review & deployment**
- Manual code review for security (especially: is there a way a user can access another tenant's data?)
- Run full test suite: all pass
- Deploy to staging, manual testing by developer
- Deploy to production
**Remaining time**: Documentation, update project notes, and — having finished faster than 2 days — start the next task.
Honest Reflection
**What worked well:**
- AI is very helpful for boilerplate and common patterns
- A good context file produces code consistent with the codebase
- Tests written at the start truly catch important bugs
**What still needs humans:**
- Query optimization specific to our data model
- Security review — AI flagged some, but final human review is still vital
- "Does this feel right?" for UX decisions
**Estimated time savings**: A task that might take 4-5 days was finished in 2 days. But this doesn't mean the developer was "idle" — the saved time was used for deeper review, future sprint planning, and client communication.
It's a form of leverage, not replacement.

Interested in building products with an AI-augmented workflow?
We use this approach on every client project.