About the role
- Evaluate product requirements for operational feasibility and create detailed specifications & tech designs based on user stories.
- Contribute to design/code reviews for quality assurance.
- Hands-on participation in development and bug fixing.
- Monitor and report technical execution progress as well as all technical issues, risk or mitigation plan in a timely manner.
- Taking up critical POCs and feasibility studies.
- Drive technical innovations in the product constantly to remain ahead of the curve.
Required Technical Knowledge
- 5+ years of experience
- Have a pragmatic approach to problem solving and solution architecture and a keen eye for simplicity.
- Have attention to detail when developing solutions
- Have the ability to break down and communicate complex problems in simple terms
- Have worked in medium to large teams for over 6+ years commercial experience as a software engineer/developer
- Have experience with Typescript, Node.js and modern JavaScript
- Have experience with designing and building React Native based mobile applications
- Have experience working with REST/GraphQL API
- Have proven track record and experience shipping mobile applications to the App Store and Google Play Store
- Have experience with implementing mobile analytics, error tracking, push notifications and other native capabilities
- Have extensive experience with various levels of testing e.g. unit, integration, end-to-end (Jest)
Bonus skills
- Experience designing, developing, and running production-grade systems at medium scale and above (50k+ users)
- The ability to work across the fullstack (Node.js)
- Native mobile development experience (Swift / Kotlin)
- Other hybrid mobile development experience (Flutter, Ionic, Cordova)
- Experience with testing tools such as react-native-testing-library and Detox
- Experience with mobile CI/CD tooling such as Fastlane/Bitrise
Engineering Philosophy
- We have a relentless focus on engineering productivity (we actively kill meetings that don't add value to the team's daily goals)
- We take a pragmatic / best practice approach to all levels of testing
- We empower all engineers to ship features as frequently as possible
- We value incremental releases processes over traditional waterfall methods
- We pride ourselves on creating a culture of software engineering excellence
- We encourage knowledge sharing amongst the team and believe continuous learning is critical to every engineer's career