Mobile Application Developer
About the Role
As a mobile application developer, you’ll help lead the direction of our Android and iOS mobile applications that are built using React Native and will be used by some of the biggest brands in the world. We have infrastructure supporting the mobile app built in Go and deployed to a Kubernetes cluster that we need to further build out and support. You’ll work with UX, Product Management, security professionals, and other engineers on a daily basis in order to build amazing software experiences. Responsibilities include creating, modifying, and testing the code that allows mobile applications to run. The developer will work from specs drawn up by senior application developers however they may assist senior mobile application developers by analyzing user needs and designing software solutions.
Key Accountabilities
- Create new mobile applications for iOS and Android using the latest best practices.
- Help maintain existing mobile applications by investigating bugs and implementing fixes.
- Participate in code reviews to help everyone grow.
- Involvement in the discussion, planning, and brainstorming with teammates and stakeholders to achieve project goals.
- Design, develop and test front-end software components in an Agile environment.
- Architect extendable and reusable solutions.
- Perform performance analysis and optimization.
- Document software designs and interfaces.
- Bug fixing and maintenance.
Key Skills
- Strong knowledge of WordPress with the ability to speak to its technical frameworks, plugins, and themes.
- Basic knowledge of Git or other version control software.
- Experience with development tools from Atlassian.
- Knowledge of software development processes and paradigms.
iOS Knowledge
- Minimum of one year of full-time development in iOS using Swift and/or Objective C.
- At least one iOS App is completed and presentable.
- Demonstrable knowledge of .Xib files, storyboards, and constraints.
- Must have a basic understanding of iOS app deployment procedures. (Store deployment, Enterprise deployment, certificates, provisioning prodfiles...etc.).
- Must have basic knowledge of mobile UI standards and iOS human interface guidelines.
- Must have knowledge of RESTful APIs and how to integrate them using the iOS framework.
- Must have knowledge of iOS local storage paradigms. (User defaults, keychain storage. Core data is a bonus).
- Basic knowledge of Push notifications and local notifications.
Android Knowledge
- Minimum of one year of full-time development in Android preferably using Android Studio.
- At least one Android app is completed and presentable.
- Demonstrable knowledge of Android layout files. (Linear layout, relative layout, ...etc.).
- Must have a basic understanding of Google Android app deployment procedures. (Store deployment, a key signing...etc.).
- Must have basic knowledge of general mobile UI standards and Android user interface guidelines.
- Must have knowledge of RESTful APIs and how to integrate them using the Android framework.
- Must have knowledge of Android local storage paradigms.
- Basic knowledge of Push notifications and local notifications.
Experience
- Bachelor in Computer Science or Computer Engineering.
- 2+ React Native (JavaScript / TypeScript)- (this skill is the top priority).
- 3+ years of experience: Java, Java Script, Typescript.
- Preferred 6 years of experience as a Sr. Software developer.
- Experience leading design and software technical specifications.
- 4-5 years experience in Agile Development.
- Experience leading development projects with React Native app(s) available in the app store.
- Experience with TypeScript.
- Experience with Unit Testing frameworks such as Jest and UI testing frameworks like Detox.
- Experience with Redux Sagas for state management.
- Experience developing apps that interact with Web Services (REST, JSON) – Axios is a plus.
- Experience developing bridges to native components.
- Experience with IntelliJ, Visual Source Code, and React Native Debugger.
- Experience with Android or iOS development.
- Experience with React preferred.