Job Description
Application Development & Architecture
1. Mobile Architecture: Lead the design and implementation of scalable application architectures, ensuring high-quality, clean, and maintainable code adhering to SOLID principles.
2. Supabase Integration: Architect and manage the backend infrastructure using Supabase, including database schema design, Row Level Security (RLS) policies, and Edge Functions.
3. Platform Specifics: Develop expertise in writing platform-specific code (Java/Kotlin for Android, Swift/Objective-C for iOS) and bridging native modules when necessary.
4. Advanced Optimization: Identify and address complex performance bottlenecks (e.g., memory leaks, slow renders) using profiling tools to ensure 60fps UI performance.
5. Testing Excellence: Implement a robust testing pyramid including unit testing (Jest), integration testing, and end-to-end testing (Detox or Appium).
6. Offline-First Logic: Design robust asynchronous data synchronization and offline-first capabilities using Supabase and local caching strategies.
7. Technical Leadership
8. Technical Roadmap: Provide technical guidance within the scrum team, influencing architectural decisions and long-term tech stack evolution.
9. Code Quality: Conduct rigorous code reviews, enforcing strict adherence to TypeScript patterns, security guidelines, and performance standards.
10. Documentation: Maintain comprehensive documentation for system architecture, API contracts, and Supabase schema configurations.
11. Project Planning & Management
12. Requirement Analysis: Analyze user stories for technical feasibility and translate complex business requirements into technical tasks.
13. Estimation & Risk: Provide accurate effort estimations and proactively identify technical risks or “technical debt” that may impact delivery timelines.
14. Stakeholder Engagement: Communicate effectively with non-technical stakeholders, providing updates on progress and explaining technical trade-offs.
15. Continuous Learning & Mentorship
16. Mentorship: Actively mentor junior and mid-level developers, fostering a culture of continuous learning and professional growth.
17. Industry Trends: Stay at the forefront of the React Native ecosystem (e.g., New Architecture/Fabric, Turbo Modules) and Supabase updates.
Experience & Qualifications
Education & Core Experience
Degree: Bachelor’s degree in Computer Science, Software Engineering, or equivalent.
RN Experience: 4-5 years of hands-on experience focused on React Native development.
Full-Stack Mindset: Proven experience in building production-ready apps from scratch, including backend integration and deployment to App Store/Play Store.Supabase & Backend Skills (Required)
PostgreSQL: Advanced knowledge of PostgreSQL, including complex queries, indexing, and relational data modeling.
Supabase Auth: Experience implementing various authentication flows (OAuth, OTP, Magic Links).
Security: Deep understanding of Row Level Security (RLS) to ensure data privacy and secure multi-tenant architectures.
Real-time: Experience with Supabase Realtime for live data syncing and presence features.
Edge Functions: Proficiency in writing serverless logic using Deno/TypeScript for Supabase Edge Functions.
Storage: Management of file uploads and CDN delivery via Supabase Storage.
Technical Knowledge
Languages: Expert proficiency in TypeScript and ES6+ JavaScript.
State Management: Deep experience with React Query (highly preferred for Supabase), Redux Toolkit, or Zustand.
Native Modules: Practical experience with native IDEs (Xcode, Android Studio) and bridging native libraries.
DevOps/CI/CD: Experience with EAS (Expo Application Services), Fastlane, or Jenkins for automated builds and OTA (Over-the-Air) updates.
Tools: Proficiency with Git (GitFlow), Jira, and debugging tools like React Native Debugger, Flipper, and Charles Proxy.
Monitoring: Experience with New Relic, Sentry, or Firebase Crashlytics for error tracking.
Soft Skills
Communication: Exceptional verbal and written communication skills for cross-functional collaboration.
Problem Solving: A proactive, solution-oriented mindset with the ability to navigate through ambiguous technical challenges.
Leadership: Demonstrated ability to lead feature squads and take ownership of the end-to-end development lifecycle.