We are seeking a highly skilled Embedded Software Developer to play a key role in developing and maintaining software for next-generation embedded systems. You will be responsible for the design, development, testing, and debugging of embedded software applications across multiple operating systems.
Responsibilities
* Design, develop, and implement embedded software applications in C and C++ for resource-constrained environments.
* Write clean, efficient, and maintainable code adhering to best practices and coding standards.
* Collaborate with hardware engineers to ensure seamless integration between software and hardware components.
* Develop unit tests and participate in system-level testing to ensure software quality and functionality.
* Debug and troubleshoot software issues, identify root causes, and implement effective solutions.
Requirements
* Bachelor's degree in Computer Science, Electrical Engineering, or a related field.
* Minimum 2+ years of experience developing embedded software in C and C++.
* Strong understanding of embedded systems architecture and resource constraints.
* Proficiency in Linux and FreeRTOS operating systems, including kernel modules and device drivers.
Preferred Skills
* Experience with real-time operating systems beyond FreeRTOS.
* Familiarity with various communication protocols and chip interconnect interfaces.
* Version control system skills and experience with continuous integration pipelines.
What We Offer
* Flexible work environment.
* Hybrid work system.
* Opportunities for career progression and professional development.