RESPONSIBILITIES
We are looking for a passionate, technically strong, hands on mobile Engineer to join us building the next generation payments product.
- Extensive understanding of Android framework components and their respective life cycles combined with a solid knowledge of multithreading, networking.
- Extensive knowledge of working with HTTP and RESTful web service, offline storage, caching and performance tuning.
- Expert level knowledge of Java, Android SDK and Gradle.
- Expert level in either Java or Kotlin.
- Experience with Python or C++ is a plus.
- Experience with the use of Git and development workflow.
- Experience in developing content rich applications including animation and window transition with Material Design.
- Experience in good app architecture using design patterns such as MVVM, MVP.
- Ability to build products with focus on testability, someone who loves test coverage.
- A disciplined approach to development, code review, testing, documentation and code structure in a team environment.
- A constant desire to improve, learn more and take things to the next level and a passion for adopting the latest features in Android.
- Actively participate in growing and coaching fellow team members.
- Able to understand future business goals from Product Owners and make sure architecture and system design can support those goals.
- Build proof-of-concepts to validate architectural and design choices and evangelize those technical choices to other teams.
- Able to understand, diagnose and then solve deep technical and performance issues across the platform.
QUALIFICATIONS
- BA/BS/MA/MS in Computer Science, Software Engineering or related field preferred or equivalent work experience.
- 3+ years of experience in Android Development and exposure to Android SDK and Android Studio.
- POS knowledge, Payment SDKs, and POS hardware experience is an asset.
- Experience with web applications, databases, or iOS is a plus.
- Experience of working in agile environment and familiarity with Jira, Confluence etc.
- Ability to clearly and effectively communicate at all levels from development to executive levels.