Embedded Software Engineer – BMS
Listed on 2026-02-24
-
Software Development
Software Engineer, Embedded Software Engineer
Job Category
:
Software Development Engineering
Requisition Number
: EMBED
001259
Apply now
- Posted:
September 14, 2024 - Full-Time
Showing 1 location
Canoo’s mission is to bring EVs to Everyone and build a world-class team to deploy this sustainable mobility revolution. We have developed breakthrough electric vehicles that are reinventing the automotive landscape with pioneering technologies, award-winning designs, and a unique business model that spans all owners in the full lifecycle of the vehicle. Canoo is starting production and is distinguished by its pioneering and experienced team of technologists, engineers, and designers.
With offices around the country, the company is scaling quickly and seeking candidates who love to challenge themselves, are motivated by purpose, and possess a strong desire to get things done.
The “Canoo Way”
Canoo’s success is the direct result of our disciplined application of our core operating principles and drills, which are based on three main principles:
Think 80/20 (“Important versus less important”), Act 30/30 (“Reduce waste and increase output”), and Live 90/10 (“We have each other’s back”). We hire based on “MET” - Mindset, Equipment and willingness to Train - and seek individuals that take accountability and deliver results being Humble, Hungry to succeed, and Hunting for opportunities to win. We train our team to engage with each other by modulating between their intellect (iQ) and emotional intelligence (eQ) applying Facts, Finesse, and Force when they communicate.
The principles and drills of the CANOO Way have been fundamental to our success, our ability to grow, continuously improve, innovate and are at the core of our day-to-day operations.
Job Purpose
The Embedded Software Engineer – Battery Management System position will support the development of Canoo’s proprietary Battery Management System (BMS) and related technologies.
Our Battery Technology
Canoo is building an industry leading, configurable battery system as part of its multi-purpose vehicle platform. This role presents a unique opportunity to shape the battery technology for Canoo’s entire vehicle range and to explore future developments in BMS communication, safety, and reliability
Responsibilities (80s of the Position)
- Develop software for embedded devices in the Canoo BMS
- Develop documentation and test plans for software
- Investigate, debug, and modify existing code
- Work with HW engineers to test, debug and validate FW on bench
- Develop standard and custom communication protocols for new systems
Required Experience
- Minimally BS In Computer/Software Engineering, Electrical Engineering,or a BS in a technically rigorous field (math, physics, etc.)
- 3+ years of embedded programming design experience
- Fluent in the use of the C programming language for embedded systems
- Strong grasp of basic embedded protocols such as SPI, I2C, UARTand CAN
- Proficient with embedded IDE development and debug tools
- Thorough understanding of software development practices, including Git and agile methodologies
- Experience with real-time operating systems (RTOS)
- Ability to follow circuit schematics and PCB layout drawings
- Experience using standard lab equipment such as oscilloscopes, function generators and serial analyzers for validating and debugging firmware
- Excellent ability to debug and root cause technical issues
Preferred Experience
- Experience with ST microcontroller platforms
- Experience working with “safety critical” systems and the rigor required to successfully develop them
- Experience developing device drivers, control systems, and communications protocols
- Familiarity with standard BMS algorithms such as state of charge estimation, isolation measurement etc.
- Familiarity with BMS technique such as cell voltage measurement, current shunt measurement, use of internal BMS serial busses etc.
- Foundational computer architecture knowledge: how an SOC works underneath the firmware
- Previous experience with Memory Protection Units (MPU) or Memory Management Units (MMU)
- Experience with Unified Diagnostic Services (UDS) and ISO-14229
Physical Requirements
While performing the duties of this job, employees may be required to sit for prolonged…
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).