The Lead React Native Developer will be responsible for building React.js or React Native iOS / Android applications for clients, implementing pixel perfect UI's, integrating with bespoke or third-party API's, and leading junior developers in the team.
Requirements
- Setup in-app purchases that integrate seamlessly with Android & iOS
- Familiarity with RESTful APIs, third-party libraries, and cloud services (e.g., Firebase, AWS)
- Knowledge of GraphQL, WebSockets, and real-time data
- Solid understanding of React hooks
- Understands React Native APIs (Alert, Animations, Dimensions, etc..)
- Solid understanding of React Native Styling using React Native StyleSheet
- Understands how Push Notification works
- Understands State management middleware (E.g. Redux Saga and Thunks)
- Understands Higher order components
- Comfortable with Debugging tools (Safari iOS Debugger, Chrome Android Debugger / Redux time travel debugging)
- Comfortable with writing and fixing failing end to end tests
- Solid understanding of Git (rebasing, merging, cherry picking)
- Capable of publishing both Android and IOS Apps to the App Store and Play Store
- Comfortable with tagging Git branches and releasing new software
- Able to build and integrate performance monitoring
- Deep understanding of HTTP concepts (GZIP compression, Cache-Control, Content-Security Policy, CORS, Pre-flight requests, XRSF, & XSS)
- Understanding of Password grant, Implicit Flow, Authorization Code
- Understands React Native Expo Tools/SDK
- Basic Understanding of Objective-C, Kotlin and Java
- Advanced CI/CD concepts, scaling systems
- Understands Networking Principles
- Good understanding of Automated Testing
- Understand Threading in React Native, JavaScript Thread vs Native Thread vs Bridge and ways to overcome its limitations
- Able to create custom React Native hooks
- Able to consider App Security
- Understanding of OAuth & OpenID
- Deep understanding of the JS event loop
- Application of design patterns in code
- Able to create different build environments (Development, staging, productions, etc..)
- Can build CI/CD pipelines from the ground up
- Comfortable with writing and fixing failing integration tests
- Comfortable with writing and fixing failing unit tests
- Understands TypeScript
- Understands React/React Native best practices
- Experience with Function Generators
- Solid understanding of React Native Styling using Styled Component
- Understands how React Navigation works and how it affects app performance
- Solid understanding of all React Native core components (Touchable buttons, Modal, ScrollView, etc..)
- Solutions design and implementation
- Improving the design of existing code
- Keep up to date with technology
- Ability to Multitask
- System design and analysis
- Ability to conceptualise and simplify complex problems
- Ability to implement and configure DevSecOps toolchains
- Leadership of junior developers in the team
Benefits
- Work as part of a team to build React.js or React Native iOS / Android applications for clients
- Implement pixel perfect UI's that match designs
- Integrate with bespoke or third-party API's
- Work with native modules when required
- Participate in all Agile ceremonies - Sprint Planning, Spring Retrospectives, Reviews and Daily Stand-ups
- Interface with clients via collaborative channels E.g. Slack, Zoom, and email
- Work with modern tools including Jira, Slack, GitHub, Google Docs, etc.
- Follow the complete Software Development Life Cycle
- Keep up to date with technology
- Leadership of junior developers in the team
- System design and analysis
- Improve the design of existing code
- Be part of a community of developers who share knowledge and help each other as problems arise
- Track your time throughout the day using Replicon
- Assist with building estimates
- Work as part of a development team
- Release applications to iOS and Google Play stores
- Implement clean, modern, smooth animations and transitions that provide an excellent user experience
- Architect, build and maintain excellent React.js or React Native applications with clean code