“Design a dating app” varies by which app you mean. Tinder is swipe-based; Hinge is profile-comment-based; Bumble is conversation-window-based. This guide focuses on Hinge as the senior-design canonical (more nuanced data model than Tinder). The interview tests profile-data engineering, matching, messaging, and the unique safety / abuse considerations of dating apps.
Clarify scope
- Profile + match + messaging?
- Premium tiers, in-app purchases?
- Identity verification?
- Video chat?
- International or US-only?
Profile data model
- Identity: name, age, gender, sexuality, location
- Photos: 6+ photos with positions
- Prompts: 3 prompt-and-answer pairs (Hinge’s differentiator)
- Vitals: height, education, ethnicity, religion (optional disclosures)
- Preferences: age range, distance, gender preference, deal-breakers
- Verification status
The discovery feed
Hinge’s “Today” view is finite (a daily set of recommendations) rather than infinite swipe:
- Server returns N recommended profiles per day
- Each profile shown as a card with photos and prompts
- User likes a specific photo or prompt (not the whole profile)
- The like is communicated to the recipient
The matching algorithm
Critical to product success:
- Filter by hard preferences (gender, age range, distance)
- Rank by ML model — uses past likes, profile features, mutual interests
- Apply diversity / fairness rules to avoid homogeneity
- Cap exposure to balance attention across users
- Hinge’s core innovation: “Most Compatible” — algorithm-driven match per day
The like flow
- Like a specific photo or prompt
- Optional comment (free-form text on the like)
- Like is sent; recipient sees in their “Likes you” inbox
- Recipient accepts → match (now can chat); rejects → like cleared
- Premium users see who liked them; free users see partial info
Messaging
- Per-match thread
- Real-time delivery (WebSocket)
- Read receipts (toggleable)
- Photo / voice-memo sharing
- Block / report controls visible
- Translate-on-read for international
Photos
- Server-side processing on upload (resize, generate thumbnails, EXIF strip)
- NSFW classifier — reject explicit content
- Verification photo (selfie matching profile pose) — separate flow
- Multiple sizes for responsive UX
Verification
- Live selfie matched to a posted profile photo
- ML check for liveness (anti-spoof)
- Verified badge displayed on profile
- Hinge implements this; signals legitimacy and reduces catfishing
Safety features
- Block, report, unmatch
- Detect harassment patterns and prompt user “Are you safe?”
- Banning across devices (device fingerprinting)
- SOS / safety check-in for in-person dates
- Location-of-meet share with trusted contact
Notifications
- “Someone liked you”
- “You matched with X”
- “X sent you a message”
- Daily Today view ready
- Per-category opt-out
Premium tiers
- Hinge+: see all likes, send unlimited likes
- HingeX: Hinge+ plus priority recommendations and “Standouts”
- App Store / Play Store IAP
- (See the IAP and subscription validation interview question on this site)
Privacy considerations
- Location: precise distance hidden (“Within 5 miles”)
- Photos: not downloadable; protected by app-level rendering
- Hide profile from co-workers (LinkedIn / employer integration in some apps)
- Incognito mode (premium) for not appearing in others’ Today views unless you like first
Anti-fraud
- Bot detection (behavioral + verification)
- Romance scam detection (pattern matching across messages)
- Photo reverse-search to detect stolen photos (services like Tineye)
- Identity verification for premium-tier users
Date scheduling and meet-up
- Built-in scheduling helper (suggest day / time)
- “Date logistics” thread separate from chat
- Safety check-in on first date
What separates senior from staff
Senior candidates draw the profile-match-message data model. Staff candidates address the matching algorithm tradeoffs (diversity, exposure, fairness), the verification and anti-fraud pipeline, and the safety primitives. Principal candidates raise the regulated content (some jurisdictions ban dating apps for minors, age verification matters), the international expansion (cultural norms differ), and the AI-companion threat (some users prefer chatbots over real matches, raising product questions).
Frequently Asked Questions
How does Hinge differ from Tinder architecturally?
Tinder: infinite swipe deck; binary like / dislike; conversation after match. Hinge: finite daily feed; granular like (photo / prompt); comment with the like. Both share the underlying messaging and safety infrastructure.
How do I handle the gender / sexuality complexity?
Inclusive options for both; the matching engine respects preferences without making them the dominant filter. Hinge has been ahead on this UX. Test with diverse user research.
What about AI-generated profiles?
Increasing problem. Detection includes photo classification, behavioral fingerprinting, verification requirement. The safety / moderation team is a major budget item.