Required Skills/Experience
-
Bachelor's degree in Computer Science (preferred), Math, Physics, or Electrical Engineering or equivalent work experience
-
Min 5 years of software development experience
-
3+ years of Android development
-
Experience in coding new Android mobile apps from scratch as well as refactoring, transitioning, and revising existing apps
-
Strong knowledge of Android UI design principles, patterns, and best practices including Custom UI or views.
-
Strong knowledge of Android SDK, different versions of Android, and how to deal with different screen sizes.
-
Familiarity with RESTful APIs to connect Android applications to back-end services.
-
Strong knowledge of Android UI design principles, patterns, and best practices
-
Experience with offline storage, threading, and performance tuning
-
Ability to design applications around natural user interfaces, such as “touch.”
-
Familiarity with the use of additional sensors, such as gyroscopes and accelerometers
-
Knowledge of the open-source Android ecosystem and the libraries available for common tasks
-
Ability to understand business requirements and translate them into technical requirements.
-
Familiarity with cloud message APIs and push notifications.
-
A knack for benchmarking and optimization
-
Understanding of Google’s Android design principles and interface guidelines
-
Proficient understanding of code versioning tools, such as Git
-
Familiarity with continuous integration
-
Min 4 years hands on GIT source code control experience
-
Perform full stack hands-on mobile development for native mobile app design and implementation on Android, including system analysis, test-driven application development, unit test, test automation, code review and application maintenance support.
-
Code and ship complex new mobile features and apps.
-
Establish and maintain strong partnerships with the project manager and technical product owners.
-
Work with owners and system leads, including Vendor Solutions, to logically design and negotiate solutions and participate in long-term product planning.
-
Ensure commitments are met while providing high-quality and cost-effective systems that meet client expectations.
-
Keep up to date on new technology, standards, protocols and tools in areas relevant to the rapidly changing digital mobile environment.
-
Work with the application support teams and external vendors as necessary to ensure all applications are supported according to their Service Level Agreements.
-
Troubleshoot and fix issues in production and non-production environments.
-
Collaborate and work with external teams to design API specs.
-
Propose and implement process improvements to make our engineering team even better