Software Developer Connected Core Applications - ENG0040369
The Connected Ecosystem Integration organization in General Motors blends aspects of Information Technology, Software Development, and Vehicle Engineering into a rewarding career that builds leading-edge services and products around the customers connected vehicle experience. The Core App team is responsible for the software development, testing, and release of vehicle integrated apps which facilitate an application shop experience to our customers. Processes follow agile software development practices within the vehicle engineering timing model.
This specific role is for a software developer with the primary responsibility to work with a team to code a portfolio of connected application products and/or features of a product. The software developer is expected to have proficiency in JAVA for android coding and possess expertise in building new (and supporting existing) android-based software products that run on an in-vehicle platform. The software developer will engage at the development start stage and work from actionable user stories and epics that are derived from business requirements. Projects often include components which interface with back office systems, so experience with distributed systems is essential. Developers will work in an agile-based environment that may not strictly adhere to every facet of the agile methodology. Developers will be expected to assure their code through comprehensive unit tests, and deliver complete, robust, and critical defect-free product to integration teams for final testing. After release of the product, the developer may be asked to continue to support the product through a warranty period, and be engaged in defect triage, bugfixes, and hotfixes for critical issues.
- 3-5 years (or more) of experience in software development in JAVA for android.
- Leverage high degree of organizational and communication skills to comprehend design as articulated by team architects and contribute to effort estimation activities.
- Work with team technical business analysts to always ensure features under development continue to meet the feature definition and expectation; communicate and escalate where necessary any ambiguous or contradictory features for resolution.
- Work with a team of developers in an agile-based environment to build features of products that will be part of an in-vehicle android platform.
- Apply critical thinking to write efficient, flexible code using various methods to assure quality and which delivers the intended feature without relying on extensive development quality assurance teams.
- Work to take a feature concept from base requirements and user stories to a functioning product that runs as part of a larger overall piece of infotainment software.
- Execute tasks in agile-based methodology and participate in scrum ceremonies; reinforce team mechanics by working in development pods to deliver product together, primarily acting as SME for the features developed.
- Communicate within the development team with tools and artifacts and methods such as JIRA, GIT, Stash, Confluence, ALM, RTC, TFS, and more.
- Leverage communication and problem-solving skills by interfacing with multiple teams to resolve integration issues during the development cycle.
- Capability to solve problems that arise in development cycle and/or escalate appropriately and contribute to resolution strategies which balance risk management against desired feature content.
- Develop and deploy product using industry-leading coding best practices, including cybersecurity design, driver distraction-sensitive standards, and object-oriented and reusable programming.
- Bachelors degree in Information Technology, Computer Science, Engineering, Physics, Math, or Chemistry
- Expertise and/or certification in Agile software development methods
- Proficiency in software development tools such as JIRA, GIT, Stash, Confluence, ALM, RTC, Gherkin, and more
- Knowledge and experience in vehicle infotainment platforms and architecture a plus (GMLAN, CAN, Global-A, Global-B, etc.)
- Fluency with connected vehicle infotainment systems
- Back office systems interaction or integration experience a plus