Dice is the leading career destination for tech experts at every stage of their careers. Our client, Apetan Consulting, is seeking the following. Apply via Dice today!
Job Title: Senior Embedded Software Engineer
Location- Remote
Job Summary:
The Senior Embedded Software Engineer is responsible for designing, developing, and maintaining embedded software solutions for hardware systems and devices. This role involves working closely with hardware engineers and cross-functional teams to build reliable, high-performance firmware and embedded applications.
Key Responsibilities:
- Design, develop, and maintain embedded software and firmware for hardware platforms.
- Write efficient, reliable, and maintainable code in C/C++ for embedded systems.
- Work with hardware teams to integrate software with microcontrollers, processors, and peripherals.
- Debug and troubleshoot system-level issues related to firmware, hardware, and drivers.
- Develop and optimize real-time embedded systems and low-level software components.
- Participate in system architecture design and technical decision-making.
- Conduct code reviews, testing, and validation to ensure high-quality software.
- Support product development lifecycle from concept through deployment and maintenance.
- Document software design, processes, and technical specifications.
Required Skills & Qualifications:
- Bachelor’s or Master’s degree in Computer Science, Electrical Engineering, or a related field.
- 5+ years of experience in embedded software or firmware development.
- Strong programming skills in C and C++.
- Experience with embedded operating systems such as RTOS or Linux.
- Knowledge of microcontrollers, device drivers, and hardware interfaces (SPI, I2C, UART, CAN).
- Experience with debugging tools, version control systems (Git), and embedded development environments.
- Strong problem-solving and analytical skills.
Preferred Qualifications:
- Experience with ARM-based processors and embedded Linux development.
- Familiarity with communication protocols and networking in embedded systems.
- Experience with IoT devices, hardware bring-up, and performance optimization.
- Knowledge of software development lifecycle and Agile methodologies.