Job Responsibilities
- 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
Required Skills/Experience
- Bachelor's degree in Computer Science (preferred), Math, Physics, or Electrical Engineering or equivalent work experience
- Min 10 years of software development experience
- 8+ 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
Personal Attributes
- Must be able and willing to collaborate in a team/cooperative environment as well as exercise independent judgment and initiative.
- Strong analytical, decision-making, and problem-solving skills.
- Is extremely logical, detail oriented with a keen attention to detail.
- Demonstrated ability to prioritize workload and meet multiple project deadlines.
- Ability to conduct research into systems issues and products as required.
- Highly self-motivated and self-directed.
- Ability to effectively prioritize and execute tasks in a high-pressure environment.
- Experience working in a team-oriented, collaborative environment.
- Proven ability to quickly learn new applications, processes, and procedures.
- Structured thinker, effective communicator with excellent written and oral communication skills.
- Excellent listening and interpersonal skills.
Must Have Skills
- Android
- Java
- Kotlin