Posted in

Staff Software Engineer – Vehicle Software Systems

Staff Software Engineer – Vehicle Software Systems

CompanyGeneral Motors
LocationMountain View, CA, USA
Salary$195000 – $298800
TypeFull-Time
DegreesBachelor’s
Experience LevelExpert or higher

Requirements

  • Bachelor’s degree in Computer Science, Engineering, or a related field. Or Work related experience
  • 10+ years of experience as a Software Engineer.
  • Strong knowledge of software engineering principles, methodologies, and best practices.
  • Solid understanding of software development lifecycle (SDLC) and agile methodologies.
  • Experience with build automation and continuous integration/continuous deployment (CI/CD) pipelines.
  • Experience with Git and collaborative workflows (e.g. code reviews, pull requests)
  • Proficiency in profiling and optimizing software services performance (e.g., memory, CPU, battery)
  • Strong knowledge of Operating Systems.
  • Excellent problem-solving and troubleshooting skills, with the ability to analyze complex release-related issues.
  • Strong communication and collaboration skills, with the ability to work effectively in cross-functional teams.
  • Detail-oriented and highly organized, with the ability to manage multiple releases and priorities simultaneously.

Responsibilities

  • Design, develop, and debug complex in-vehicle software for current and future vehicle architectures in an agile environment, providing technical leadership to execution teams for development of resilient, high-performance solutions at scale.
  • Facilitate cross function collaboration with design, product, program, safety, systems and other groups within and outside the company to implement/sustain in-vehicle software features.
  • Collaborate with colleagues across multiple teams to drive in-vehicle software development strategies.
  • Act as liaison, helping align goals, technical standards, architecture decisions, and roadmaps across teams, reducing conflicts, creating unified technical strategy, share knowledge, and improve communication between teams, preventing misunderstandings, reducing duplicate work, and streamlining project timelines to ensure a cohesive product.
  • Spearhead innovation projects, from exploring new technologies to optimizing development processes, enable faster identification of opportunities and inefficiencies, leading to cost savings and better product performance. Handle high-pressure situations, such as system outages or high-priority projects, and implement effective solutions faster.
  • Drive a culture of continuous learning across engineering teams, mentor, coach and develop engineers, share technical insights, and promote common diagnostic approaches within Engineering Standard Work.
  • Lead efficient and timely discussions of issues, by bringing several cross disciplinary teams together to analyze test data, review code, and create stories to address issues proactively.
  • Exhibit proactive learning and knowledge sharing with team members on new and advanced topics crucial in creating robust technical specifications and requirements while contemplating scenarios and corner cases.

Preferred Qualifications

  • Bachelor’s degree in Computer Science, Engineering, or a related field. Or Work related experience
  • 10+ years of experience as a Software Engineer.
  • Strong knowledge of software engineering principles, methodologies, and best practices.
  • Solid understanding of software development lifecycle (SDLC) and agile methodologies.
  • Experience with build automation and continuous integration/continuous deployment (CI/CD) pipelines.
  • Experience with Git and collaborative workflows (e.g. code reviews, pull requests)
  • Proficiency in profiling and optimizing software services performance (e.g., memory, CPU, battery)
  • Strong knowledge of Operating Systems.
  • Excellent problem-solving and troubleshooting skills, with the ability to analyze complex release-related issues.
  • Strong communication and collaboration skills, with the ability to work effectively in cross-functional teams.
  • Detail-oriented and highly organized, with the ability to manage multiple releases and priorities simultaneously.