We are seeking a highly skilled and experienced Senior Embedded Software Engineer with a strong focus on C language development for software stacks running on RTOS and Embedded Linux platforms. In this pivotal role, you will be responsible for delivering high-quality code, providing technical leadership, and collaborating with cross-geographic teams to build robust and performant embedded solutions. If you are passionate about low-level programming, system architecture, and thrive in an agile development environment, we encourage you to apply.
Key Responsibilities :
- High-Quality Code Delivery : Design, develop, and deliver high-quality, efficient, and reliable C code for software stacks operating on various RTOS (Real-Time Operating Systems) and Embedded Linux platforms.
- Cross-Geographic Collaboration : Actively collaborate with diverse, cross-geographic teams to facilitate effective project planning, conduct thorough risk assessments, resolve complex technical issues, and ensure timely project delivery.
- Technical Guidance & Mentorship : Provide technical guidance and mentorship to team members through comprehensive documentation, rigorous code reviews, and proactive knowledge-sharing sessions.
- Agile Development Leadership : Champion agile methodologies, contributing significantly to the creation and evolution of product roadmaps, continuous process improvements, detailed requirements specifications, robust design plans, and effective test strategies.
- Lead Challenging Tasks : Take the lead on complex and challenging tasks, which include, but are not limited to :
- System Architecture Design : Contribute to and lead the design of overall system architectures for embedded products.
- Software Stack Integration & Release : Oversee the integration, testing, and release of complex software stacks.
- System-Level Debugging : Expertly debug intricate system-level issues, identifying root causes and implementing effective solutions.
- Performance, Stability & Security : Ensure the optimal performance, stability, and security of the deployed software stacks through meticulous testing and optimization.
Qualifications :
Education : Bachelor's degree (Master's preferred) in Computer Science, Electrical Engineering, Electronics Engineering, or a similar relevant technical field.Experience : Proven professional experience in embedded software development, particularly with C language (typically 7+ years for a senior role, depending on depth of experience).Core Technical Skills :
Exceptional proficiency in C programming for embedded systems.Extensive hands-on experience with RTOS (e.g., FreeRTOS, VxWorks, QNX, Zephyr) and / or Embedded Linux environments.Deep understanding of software stack development (e.g., communication protocols, networking stacks, device drivers, middleware).Strong debugging skills at the system level, including experience with JTAG / SWD debuggers, logic analyzers, oscilloscopes, and protocol analyzers.Familiarity with various hardware interfaces and peripherals (e.g., SPI, I2C, UART, USB, Ethernet, GPIO).Methodologies : Practical experience with Agile development methodologies (Scrum, Kanban).Problem-Solving : Excellent analytical and problem-solving skills with a strong ability to diagnose and resolve complex technical issues.Communication : Strong verbal and written communication skills to effectively collaborate with cross-functional and geographically dispersed teams.Version Control : Proficiency with version control systems, especially Git.ref : hirist.tech)