Embedded Firmware Engineer (C/C++) – IC & Hardware Development
We are looking for a skilled Embedded Firmware Engineer with a strong background in low-level software development and embedded hardware. In this role, you will develop firmware for IC-based products, collaborate closely with hardware engineers, and contribute to the design, debugging, and validation of embedded systems.
This position is ideal for engineers who enjoy working close to the hardware and solving complex firmware and system integration challenges.
Key Responsibilities
Analyze system requirements and design embedded firmware solutions for IC-based applications.
Develop, debug, and optimize firmware using C, C++, Assembly, and/or Machine Language.
Troubleshoot firmware issues across both analog and digital hardware platforms.
Collaborate with hardware engineers on circuit-level and board-level design.
Develop firmware interfacing with RTOS, low-level drivers, and embedded peripherals.
Perform root-cause analysis of hardware and software integration issues.
Validate firmware functionality against hardware specifications and system requirements.
Execute firmware testing, verification, and debugging throughout the development lifecycle.
Prepare technical documentation including design specifications, test reports, and code updates.
Mentor junior engineers and contribute to engineering best practices.
Required Qualifications
Bachelor's degree in Electrical Engineering, Computer Engineering, Computer Science, or a related discipline.
3–6+ years of embedded firmware development experience.
Strong programming skills in C and C++.
Working knowledge of Assembly Language and/or Machine Language.
Solid understanding of analog and digital electronics.
Experience with Embedded Systems and Real-Time Operating Systems (RTOS).
Hands-on experience with hardware schematics and board-level debugging.
Experience using debugging tools such as:
Oscilloscopes
Logic Analyzers
JTAG / ICE Debuggers
Preferred Qualifications
Experience with ICs, Microcontrollers, or SoC platforms.
Knowledge of embedded communication protocols, including:
I2C
SPI
UART
CAN
Experience working within safety-critical, regulated, or high-reliability development environments.
Familiarity with embedded software development lifecycle, testing, and hardware/software integration.
What We're Looking For
Strong analytical and problem-solving skills.
Passion for embedded systems and low-level programming.
Excellent debugging and troubleshooting abilities.
Collaborative mindset with strong communication skills.
Ability to work independently while contributing effectively within cross-functional engineering teams.
About Aurora Engineering AB
Aurora Engineering AB is a Swedish engineering consultancy providing technical expertise and project support within the automotive and industrial sectors. We connect skilled engineers with innovative companies to deliver high-quality solutions in product development, design, testing, and digital engineering.