From Idea to Production: How Propertips Serves 10,000+ Real Estate Advisors
Deep dive into building and scaling a React Native super app for iad Group — architecture decisions, performance at scale, and enterprise lessons.
Context: What is Propertips and Why It Matters
Propertips is the flagship mobile app for iad Group, Europe's leading independent real estate network. It's the daily tool for 10,000+ real estate advisors across France, Portugal, Spain, and other European markets.
Think of it as a super app: property listings, CRM, notifications, document management, and networking — all in one React Native application.
My Role: Mobile Lead, React Native Architecture
I joined as the mobile lead responsible for:
- Architecture decisions for the React Native codebase
- Performance optimization for a user base that grew from 2K to 20K daily active users
- Feature development including the notification system, deep linking, and offline capabilities
- GA4 tracking plan design for product-driven growth
Technical Challenges
1. Batch Notification System
With 10K+ users, notifications are critical. I designed a batch notification system that:
- Groups similar notifications to avoid spam
- Uses deep linking to navigate directly to the relevant screen
- Handles background/foreground states gracefully on both iOS and Android
// Simplified notification grouping logic
const groupNotifications = (notifications: Notification[]) => {
const groups = new Map<string, Notification[]>();
notifications.forEach(n => {
const key = `${n.type}_${n.entityId}`;
groups.set(key, [...(groups.get(key) || []), n]);
});
return Array.from(groups.entries()).map(([key, items]) => ({
...items[0],
count: items.length,
title: items.length > 1
? `${items.length} new updates on ${items[0].entityName}`
: items[0].title
}));
};
2. Deep Linking Architecture
Every screen in the app is accessible via deep link. This enables:
- Push notification → direct screen navigation
- Email links → app with fallback to web
- QR code scanning → property details
The challenge was maintaining a URL scheme that maps cleanly to the React Navigation stack while handling auth states (logged in vs. logged out → redirect after login).
3. Offline-First with WatermelonDB
Real estate advisors work in the field — often in basements, parking lots, or rural areas with poor connectivity. The app needed to work offline.
I implemented WatermelonDB for local-first data with lazy syncing:
- Property data syncs incrementally
- Favorites and notes persist locally immediately
- Conflict resolution uses last-write-wins with server authority
Performance Optimizations for 10K+ Users
Key optimizations that kept the app snappy:
- FlatList virtualization with
getItemLayoutfor instant scroll - Image caching with progressive loading
- Hermes engine for faster startup on Android
- Bundle splitting to reduce initial load by 40%
GA4 Tracking Plan
I designed a comprehensive tracking plan to inform product decisions:
- Engagement events: screen views, feature usage, search queries
- Business events: property saves, contact requests, referral clicks
- Technical events: crash-free rate, API latency, offline sync events
This data directly informed the product roadmap — we discovered that the "nearby properties" feature had 3x higher engagement than expected, leading to it being promoted to the home screen.
What Building for Enterprise Scale Taught Me
- Code review culture matters more than code quality tools. PR reviews caught more bugs than ESLint ever did.
- Feature flags are essential. Rolling out to 10K users means you need the ability to kill a feature instantly.
- Users are surprisingly patient with performance, but unforgiving with data loss. Offline sync reliability was more important than animation smoothness.
Need a React Native developer for your enterprise app? Book a call.
Want more like this?
Get the free toolkit + occasional tips on React Native, Next.js, and AI.
No spam. Unsubscribe anytime.