Be involved in all aspects of developing new features including user story elaboration, estimation, analysis, design, programming, unit/integration testing and debugging following Agile development practices such as Scrum and Extreme Programming (XP). In this highly collaborative, multi-functional, and Agile environment. You will also…
• Build industry leading mobile apps for connected vehicles on a global scale
• Elaborate, estimate, and design for small increments of work…just-in-time
• Commit to completing well-defined work and deliver on those commitments
• Swarm around tasks along with other Scrum team members
• Perform technology evaluation and design spikes
• Test-drive code
• Pair program with different people in many situations
• Report status of assigned software development tasks
• Consistently follow the specified software development methodology
• Model adventurous and continuous learning to the team. Actively help team members continuously learn
• Promote improvements in functional/acceptance test driven development, continuous integration, and test automation
• Continuously learn and challenge the organization concerning new practices, processes, technologies, and languages
• Build a strong team using their collaboration skills.
• Interview and mentor team members.
• Provide leadership and assistance among cross-functionally
• Demonstrate a high degree of business insight, creativity, a drive for results, decision and negotiation capability, develop peer relationships, and a strong technical learning
What You Need
• BS in Computer Science or other related field of study and applicable work experience
• 5+ years of experience on a team developing mobile apps in at least one of the following frameworks: React Native, native Android, or native iOS apps.
• Design and write software technical specifications, write software code and perform unit testing
• Apply current technology to solve technical problems and ensure system and application performance is optimized
• Work with business units to improve efficiency and remove barriers in applications
• Work with product teams on new product ideas, designs, prototypes and estimates
• Maintain coding standards to facilitate code maintenance and enhancement
• Provide deep systems support (programming, architecture, system analysis) for the Applications team
• Document processes and development projects.
What Would Be Better
• 5+ years in development of app(s) available in the Google Play store in a team environment
• Experience designing and developing mobile applications in a complex operating environment; financial industry experience strongly preferred
• Proven experience/responsibility for design and architectural decisions of app in the app store
• Experience developing apps that interact with Web Services (REST, JSON)
• Demonstrated knowledge and practical application of design patterns
• Experience with identifying and writing appropriate tests using mocking/spying frameworks for isolation of the subject component
• Knowledge of and desire to work in an Agile development environment
• Must have strong teamwork orientation and the ability to foster collaboration within and across teams
• Understanding of object-oriented design, client-server architecture, and relational database design
• Experience with notification platforms such as FCM, APNS
• Experience developing location-based services with MapKit, Google Maps or similar framework
• Experience in Jenkins, Fastlane, and Fabric for continuous integration and deployment
• Experience with multithreading, memory management, and caching mechanisms specific to mobile devices
• Familiarity with SCRUM as a development method for Agile Development
• Adaptive learning and application of new technologies
Bachelor's Degree