Description
Workplace Classification:
Hybrid : This role is categorized as hybrid. This means the candidate is expected to report to their primary work location three times per week, at minimum, or other frequency dictated by the business.
The Role:
In this software development role, you will be responsible for developing software applications using sound, repeatable, industry standard methodologies. You will have the opportunity to work hands-on writing software or solutions, based on detailed requirements and system specifications. Development activities will include updating existing software and/or developing new software solutions to address a specific need or solve a particular business problem.
Additionally, you will drive development activities in accordance with appropriate methodologies and application of a repeatable, systematic, and quantifiable approach to the development process. You will coach/mentor software developers and will review the software being developed. This role will also work closely with architects and technical leaders to ensure code alignment with design patterns/frameworks.
What You'll Do (Responsibilities):
- Write software for vehicle-side functionality in C/C++.
- Participate in discussions & reviews for requirements, design, and test cases.
- Create software design artifacts using Unified Modeling Language (UML) techniques.
- Use cross-compilation techniques to compile designs for multiple embedded platforms.
- Perform software configuration management using Git and code review using Gerrit, GitHub.
- Implement Unified Diagnostic Services (UDS) diagnostics over Ethernet (DoIP and Socket Adapter) and Controller Area Network (CAN) using C/C++.
- Perform emulator/simulator, bench, and verification testing.
- Diagnose, debug, and solve issues related to vehicle software.
- Work closely with teams from other groups to support triage and resolution of difficult problems in a timely manner.
- Collaborate with System Engineers to refine understanding of requirements and identify opportunities for innovation.
- Write clear and concise test cases that cover various scenarios and edge cases.
- Execute unit tests and analyze the results to identify and report defects.
- Integrate unit tests into the continuous integration and delivery pipeline.
- Continuously improve unit testing processes and methodologies
- Collaborate with the development team to resolve issues identified through testing.
- Collaborate with software developers to ensure comprehensive test coverage.
Additional Description
What You'll Need (Required Qualifications):
- Bachelor's degree (or higher) in Computer Science or relevant discipline.
- 5+ years of proven software development foundation experience including competencies in object-oriented methodologies, data structures, algorithms relevant design patterns, and software design lifecycle.
- Proficient in C or C++ programming language.
- Proficiency in working with Linux and QNX platforms.
- Experience writing clients for Web Services (REST, RPC, and/or SOAP).
- Familiarity with CI/CD and DevOps pipelines using GitHub, GitHub Actions, Jenkins, etc.
- Design and develop unit tests for C++ software components.
- Implement and maintain unit testing frameworks (e.g., Google Test, Catch2, Boost. Test).
People Skills:
- Strong analytical and innovative problem-solving skills.
- Excellent communication and teamwork skills.
- Ability to learn quickly and work independently or as part of a team.
- High level of oral and written communication skills.
- High level of interpersonal skills to work independently and effectively with others locally and in a geographically dispersed team.
What Will Give You A Competitive Edge (Preferred Qualifications):
- 8+ years of Engineering experience in a job-related area.
- 1+ years of Client software development and debugging.
- In-depth knowledge of unit testing frameworks and methodologies.
- Experience in writing unit tests for C++ applications.
- Familiarity with continuous integration and delivery practices.
- Exposure to working in Agile development methodology (Scrum, XP, SAFe, etc.)
- Exposure to other embedded programming languages like Rust, Python.
- Demonstrated experience in multithreading, inter-process communication and synchronization of shared resources.
- Experience using source code control systems and tools such as Git/Repo and code collaboration tools such as Gerrit, GitHub, Optimus, Static code analysis tools like Sonar, Parasoft, CPP, etc.
- Prior experience in vehicle embedded or Mobile or Infotainment software development.
• This job may be eligible for relocation benefits.
#LI-DH2
About GM
Our vision is a world with Zero Crashes, Zero Emissions and Zero Congestion and we embrace the responsibility to lead the change that will make our world better, safer and more equitable for all.
Why Join Us
We aspire to be the most inclusive company in the world. We believe we all must make a choice every day - individually and collectively - to drive meaningful change through our words, our deeds and our culture. Every day, we want every employee, no matter their background, ethnicity, preferences, or location, to feel they belong to one General Motors team.
Total Rewards | Benefits Overview
From day one, we're looking out for your well-being-at work and at home-so you can focus on realizing your ambitions. Learn how GM supports a rewarding career that rewards you personally by visiting Total Rewards resources.
Diversity Information
General Motors is committed to being a workplace that is not only free of unlawful discrimination, but one that genuinely fosters inclusion and belonging. We strongly believe that workforce diversity creates an environment in which our employees can thrive and develop better products for our customers. We encourage interested candidates to review the key responsibilities and qualifications for each role and apply for any positions that match their skills and capabilities. Applicants in the recruitment process may be required, where applicable, to successfully complete a role-related assessment(s) and/or a pre-employment screening prior to beginning employment. To learn more, visit How we Hire
Equal Employment Opportunity Statement (U.S.)
General Motors is proud to be an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, or status as a protected veteran.
Accommodations (U.S. and Canada)
General Motors offers opportunities to all job seekers including individuals with disabilities. If you need a reasonable accommodation to assist with your job search or application for employment, email us [email protected] or call us at 800-865-7580. In your email, please include a description of the specific accommodation you are requesting as well as the job title and requisition number of the position for which you are applying.
Top Skills
What We Do
At General Motors, our vision is to create a world with Zero Crashes, Zero Emissions, and Zero Congestion. We wholeheartedly embrace the responsibility to lead the change that will make our world better, safer, and more equitable for all.
Our industry and company are undergoing a once-in-a-lifetime technological transformation, which is reshaping our approach to technology and innovation. We are expanding our horizons through new technology platforms and driving innovations that deliver exceptional value to our customers.
Why Work With Us
At General Motors, our purpose is to pioneer the innovations that move and connect people to what matters. We’re driving the world forward, together. We’re building vehicle software alongside its hardware, hands-free driving that will lead to autonomy, and EVs that charge your home for an all-electric future.
Gallery
General Motors Offices
Hybrid Workspace
Employees engage in a combination of remote and on-site work.
Roles that are categorized as Hybrid mean that the successful candidate is expected to report onsite to the designated facility at least three times per week or other frequency as dictated by the business.