Job Title: Senior Mobile Applications Developer
Duration: 6 Months +
Location: 100% Remote (Central time zone)
The Senior Mobile Application Developer serves as a lead technical resource on the Digital Development team (Web & Mobile) and participates in all phases of the development life cycle. The Senior Mobile Application Developer analyzes complex business and technical problems and shapes and delivers the Company’s new mobile operations platform. The Senior Mobile Application Developer analyzes, configures, and tunes the Company’s mobile applications and is considered the subject matter expert on mobile application and web technologies. The Senior Mobile Application Developer also enforces software development standards and mentors less experienced developers.
This project is a key piece of our wider platform which focuses on enhancing capabilities, fostering innovation, and providing support for the routing and transit of drivers to efficiently service our customers. The project leverages technology, data analytics, and process optimization to streamline the routing and transit operations, empowering our drivers to provide prompt and efficient service to customers.
- Collaborates with cross-functional teams to define, design, implement, test, and deploy new web and mobile features in a fast-paced environment.
- Works with internal and external data sources and API’s.
- Writes unit tests to increase reliability and quality of applications.
- Addresses system defects and implements enhancements to existing functionality.
- Troubleshoots issues with minimal guidance, identifies bottlenecks in existing workflows and provides solutions for a scalable, defect-free application.
- Complies with Company policy and practices relating to the System Development Life Cycle.
- Maintains productive working relationships with project sponsors and key systems users.
- Keeps up on industry trends and current technological standards, languages, coding techniques, utilities, and operational considerations.
- Makes suggestions for process, coding, implementation, and performance improvements.
- Provides mentoring, training and technical guidance to junior developers and assists in training other programming or support team members in a cooperative and effective manner.
- Performs other job-related duties as assigned or apparent.
- Minimum of 5 years of experience in software development, information systems, or an equivalent technical environment.
- Experience in leading the development of highly transactional, mission critical applications in environments/architectures for multi-user systems.
- Experience in all aspects of the software development lifecycle, including design, functional and technical requirements, coding, debugging, testing, release, and operational support.
- Experience with software development best practices, including coding standards, code reviews, source control management, build processes, testing and operations.
- Bachelor’s degree in Computer Science or related field.
- Experience with agile software development methodologies (Scrum, Kanban).
- Experience working with offshore/near shore teams.
- In depth understanding of native Android development and experience in developing complex, mission critical applications.
- 4+ years of professional Android experience using Kotlin.
- Strong understanding of Android architectures such as MVC, MVP and MVVM.
- Experience with Android UI principles and best practices.
- Experience with offline storage, threading, and notifications.
- Experience with RxJava and Coroutines.
- Experience with API’s and integration with Android applications.
- Experience with patterns for application layers and dependency injection.
- Experience with using Work Manager.
- Experience with Git and GitHub.