Sr. Mobile Device Software Developer
Apply NowCompany: Tech Tammina
Location: Warren, MI 48089
Description:
Responsibilities:
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.
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
Requirements
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
Preferred mobile experience (in a production application) of one or more of the following platforms
React Native app(s) development
TypeScript
Unit Testing frameworks (i.e. Jest) and UI testing frameworks like Detox
Redux Sagas for state management
Axios
Experience developing bridges to native components
IntelliJ, ReactNative Debugger
Android
Java 8 and RX Java
Retrofit
Frameworks such as Dagger and design patterns such as MVP, Singleton, Factory
Native Android HIG and UI development standard methodologies - Android Material Design
Data persistence frameworks such as Realm or Active Android
Google Play Services, Android Studio, Android Auto
Google app store publishing process
iOS
Swift and Objective-C
AF Networking and Mantle
Experience with native iOS HIG and UI development best practices including a deep knowledge of UIKit and AutoLayout
Experience developing for Apple Watch or CarPlay are a plus
Experience with the publishing process for the iOS app store
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.
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
Requirements
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
Preferred mobile experience (in a production application) of one or more of the following platforms
React Native app(s) development
TypeScript
Unit Testing frameworks (i.e. Jest) and UI testing frameworks like Detox
Redux Sagas for state management
Axios
Experience developing bridges to native components
IntelliJ, ReactNative Debugger
Android
Java 8 and RX Java
Retrofit
Frameworks such as Dagger and design patterns such as MVP, Singleton, Factory
Native Android HIG and UI development standard methodologies - Android Material Design
Data persistence frameworks such as Realm or Active Android
Google Play Services, Android Studio, Android Auto
Google app store publishing process
iOS
Swift and Objective-C
AF Networking and Mantle
Experience with native iOS HIG and UI development best practices including a deep knowledge of UIKit and AutoLayout
Experience developing for Apple Watch or CarPlay are a plus
Experience with the publishing process for the iOS app store