Software Engineer

ElDorado National California IncRiverside, CA
3h$110,000 - $130,000

About The Position

The Software Engineer is responsible for the design, development, testing, and troubleshooting of software systems and applications, particularly in the area of control system development for Electric Vehicles (EVs). This role requires collaboration with various teams, including international teams, to ensure that software and systems operate efficiently, reliably, and securely. In addition, the engineer will mentor and support junior developers while working closely with cross-functional teams and external partners to drive the development and implementation of new software solutions. Maintaining clean, well-documented code while adhering to best practices in software quality, security, and performance is essential.

Requirements

  • Practical knowledge in software engineering & automotive engineering
  • Skills in translating vehicle-level requirements into software requirements.
  • Proficient in creating software design documents (e.g., High-Level Design, SRS, UML)
  • Profound knowledge of vehicle software design and development.
  • Strong programming skills with C, C++, Java and Python.
  • Experience in implementing high-quality, reliable, and standards-compliant software code (e.g., MISRA, MAAB).
  • Proficiency with software development tools (e.g., MATLAB/Simulink, GitHub).
  • Strong Model-Based Development (MBD) skills for software implementation.
  • Expertise in root cause analysis for vehicle system failures, particularly in EV systems.
  • Strong debugging and troubleshooting skills for embedded software.
  • Proficiency in analyzing and interpreting software performance metrics (e.g., execution time, CPU load).
  • Strict adherence to software safety standards and regulations (e.g., ISO26262)
  • Precision-focused approach to software validation
  • Implementation of quality control measures for software systems
  • Ability to manage multiple software design projects
  • On-time delivery of software system solutions
  • Effective communication with cross-functional engineering teams
  • Hands-on experience with software test equipment (e.g., Simulink Test)
  • Knowledge of the unit testing and mitigation techniques
  • Prototyping and validation of software systems
  • Optimization of software designs for cost/performance
  • Implementation of process improvements in software development
  • Staying current with software engineering advancements
  • Bachelor’s degree in software engineering or a related field (required). Equivalent education or experience may be considered.
  • 5+ years of experience in Software Engineering, preferably in the automotive industry.
  • 3+ years of hands-on experience with software design tools (e.g., Simulink, Stateflow)
  • 3+ years of hands-on experience with data logging & analysis tools (e.g., CANalyzer)
  • Proven track record in troubleshooting and optimizing complex vehicle software systems.
  • Hands-on experience in vehicle control software, preferably EV controls (e.g., VCU, BMS).
  • Familiarity with cross-functional project management tools (e.g., JIRA, Confluence).

Nice To Haves

  • Advanced degree (Master’s/PhD) or certification in Software Engineering or related technologies.

Responsibilities

  • Develop and manage Electric Vehicle (EV) software requirements and specifications.
  • Develop software to control vehicle hardware including motor control systems and other critical vehicle functions.
  • Design and implement software systems and components for applications and platforms using tools such as MATLAB/Simulink.
  • Develop and execute testing and diagnostics for software products and systems, primarily for EV applications.
  • Troubleshoot software-related issues in components, communication, and vehicle systems.
  • Resolve complex technical challenges in component development, system integration, and deployment.
  • Improve software engineering processes through standardized procedures, documentation and related tools.
  • Design, code, test, debug and maintain controllers with multiple inputs and outputs.
  • Proactively mitigate project delays by providing short-term solutions for design/implementation issues.
  • Support system configuration, including installation, training, and setup for end-users or internal stakeholders.
  • Collaborate with cross-functional teams (e.g., Sales, Manufacturing, Service) to design, implement, and troubleshoot new technologies/features.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service