Rimac Automobili is looking for a new BMS Embedded Software Engineer. As a young technology company driven by innovation, Rimac is always looking for talented people with awesome ideas.
Rimac Automobili provides technology solutions for various vehicle manufacturers and companies in other industries, along with the development of our own Rimac Hypercars program. Our Battery Management Systems team has developed both hardware and software solutions for the Concept One battery pack, as well as numerous other public and secret projects, positioning Rimac Automobili as a leader in the development and production of high-performance battery packs.
As part of a talented team engineers developing cutting edge BMS technology, you will have a specific responsibility of delivering high-quality embedded code running on in-house developed HW platforms. You will be using leading software development tools and practices. Join us if you want terms such as EV Hypercar, 1 MW, 1000 Volts and 120 kWh to become a part of your everyday professional language.
If you want to be a part of our team and work on challenging and exciting projects which aim to re-define the automotive and technology industries, let us know. We would love to hear from you.
1. Responsibilities & Work Tasks
• Design and implementation of software for BMS systems from requirements to production and commercial deployment
• Design, development, coding, testing and debugging system software from low-level drivers to application algorithms
• Reviewing code and design
• Analyzing and enhancing efficiency, stability and scalability of system resources
• Supporting software QA and optimizing performance
• Providing post-production support
• Interfacing with hardware design and development
• Developing firmware for custom hardware platforms
• Developing system algorithms such as battery SoC (State of Charge) and SoH (State of Health) and various communication protocols
• Defining system hardware and software architecture
• System integration of firmware with hardware and mechanics
• Both Real-Time Operating system (RTOS) and “bare metal” programming
• ISO26262 compliance in development process (if required)
2. Required Skills & Competencies
• Working experience in embedded software engineering
• MS degree in Computer Science or Engineering or proven equivalent in experience
• Experience in hands-on development and troubleshooting on embedded targets
• Programming experience in C/C++
• Excellent knowledge of OS coding techniques, communication protocols (UART, CAN, SPI, LIN), interfaces and hardware subsystems
• Excellent understanding and development of low-level drivers for microcontroller peripherals – DI, DO, ADC, DAC, Timers, PWM, DMA, Watchdog, etc.
• Experience in embedded systems design with pre-emptive, multitasking real-time operating systems
• Familiarity with software configuration management tools, static code analysis, unit testing and peer review
• Adequate knowledge of reading schematics and components data sheets
• Strong documentation and writing skills
• Self-organized and goal-oriented
• Very good knowledge of English (written and spoken) is essential
3. Ideal Candidate
• Extensive experience in the development and integration of products in the automotive sector especially EV
• Hands-on experience in the development of battery systems HW and SW
• Broad experience in engineering
• Experience in CAN tools such as Vector CANalyzer, script languages and Matlab/Simulink
• ISO26262 development process experience