This assignment evaluates your ability to work in our spec-driven, AI-native development workflow. You'll build a fintech feature from scratch using the same process we use daily at Lovie: write a detailed spec, implement it, test it end-to-end, and automate the entire workflow.
Time Expectation: 3-4 hours
What We're Evaluating:
- Language Mastery: Can you write specs so clear that AI (and humans) execute them flawlessly?
- Technical Depth: Do you understand banking/fintech well enough to make architectural decisions?
- Vibe Coding: Can you ship a working prototype quickly using modern AI tools?
- Process Discipline: Can you follow a structured workflow that scales with AI agents?
You're building a feature for a consumer fintech app that allows users to request money from friends. Think Venmo's "Request" feature or Cash App's payment requests.
Build a web or mobile app with the following functionality:
- Request Creation Flow
- User enters recipient's email/phone, amount, and optional note
- System validates inputs (amount > 0, valid contact format)
- Creates a payment request with unique ID and shareable link
- Request Management Dashboard
- List of outgoing requests (sent by user) showing status: Pending, Paid, Declined, Expired
- List of incoming requests (received by user) with actions: Pay, Decline, View Details
- Filter by status and search by recipient/sender
- Request Detail View
- Shows request amount, note, sender/recipient info, timestamp
- For incoming requests: displays "Pay" and "Decline" buttons
- For outgoing requests: displays current status and "Cancel" option if pending
- Payment Fulfillment Simulation
- When user clicks "Pay" on an incoming request, simulate payment processing
- Show loading state (2-3 seconds) then success confirmation
- Update request status to "Paid" and reflect in both sender and recipient dashboards
- Request Expiration
- Requests expire after 7 days if not paid or declined
- Display expiration countdown on request details
- Expired requests cannot be paid
- Authentication: Simple email-based auth (magic link or mock auth is fine)
- Data Persistence: Use any database (SQLite, PostgreSQL, Supabase, Firebase, etc.)
- Responsive Design: Must work on mobile and desktop (web apps only)
- Deployment: Publicly accessible URL (Vercel, Netlify, Expo Go, etc.)
You must use GitHub Spec-Kit for this assignment. Research how it works and follow its workflow to:
- Generate your spec and implementation plan
- Break down tasks
- Build using an agentic AI coding tool (Cursor, Claude Code, v0, Lovable, Windsurf, etc.) — required
- Use any tech stack (React, Next.js, React Native, Expo, SwiftUI, etc.)
Additionally:
- Write automated E2E tests using Playwright, Cypress, Maestro (mobile), Detox, or similar
- Generate an automated screen recording of your E2E tests running (Playwright/Cypress have built-in video recording)
- Public repo with clear README
- Include:
- Spec-Kit generated files
- Source code
- E2E test suite
- Screen recording video (or link)
- Setup instructions
- Deploy to a public URL
- Include URL in README
- Should be testable without local setup
Your README should include:
- Project overview
- Live demo URL
- Setup instructions for local development
- How to run E2E tests
- Tech stack and AI tools used