Design a Personal Finance Aggregation Platform
Last updated: September 4, 2025
Quick Overview
Build a Mint-like system with real-time financial data sync, schema normalization, privacy controls, and anomaly detection on transactions.
Perplexity
System Design
Software Engineer
Perplexity
September 4, 2025Software Engineer
System Design Round
System Design
Hard
12
7
3,040 solved
Build a Mint-like system with real-time financial data sync, schema normalization, privacy controls, and anomaly detection on transactions.
This question has been reported directly on Glassdoor for Perplexity interviews. It tests general system design breadth beyond AI-specific topics.
What the Interviewer Expects
- Design real-time data sync from financial institutions
- Implement schema normalization across providers
- Address privacy and PII handling requirements
- Build anomaly detection for unusual transactions
- Plan refresh scheduling and failure recovery
Key Topics to Cover
Financial data aggregation
Schema normalization
PII handling
Anomaly detection
OAuth integration
How to Approach This
- Start by clarifying functional and non-functional requirements with the interviewer.
- Estimate the scale: QPS, storage, bandwidth. This drives your design decisions.
- Draw a high-level architecture first, then deep dive into 1-2 critical components.
- Discuss trade-offs explicitly (e.g., consistency vs availability, SQL vs NoSQL).
- Address failure scenarios, monitoring, and how the system handles 10x traffic spikes.
Possible Follow-up Questions
- How do you handle institutions that only support screen scraping?
- What is your approach to categorizing transactions?
- How do you handle stale data from institutions with slow APIs?
Sharpen Your Skills on Codemia
Practice similar problems with our interactive workspace, get AI feedback, and track your progress.
Practice System Design ProblemsSample Answer
Requirements
Functional Requirements
- Real-Time Data Sync: Integrate with various financial institutions to fetch transaction data in real-time using OAuth.
- Schema Normalization: Standardize trans...
Capacity Estimation
Assuming Perplexity targets 1 million users with an average of 100 transactions per month:
- Total Transactions per Month: 1,000,000 users * 100 transactions = 100,000,000 transactions.
- **Daily ...
Submit Your Answer
Markdown supported