Job Description
AmaliTech seeks a highly skilled and experienced C++ Developer with in-depth expertise in embedded systems programming, particularly with Microcontroller Units (MCUs), Renesas platforms, and CMAKE build systems. The ideal candidate will have a strong background in developing and optimizing software for resource-constrained environments, with a focus on performance, reliability, and maintainability.
This role involves designing, developing, and debugging embedded software solutions for cutting-edge products in industries such as automotive, IoT, industrial automation, or consumer electronics. You will work closely with cross-functional teams to deliver high-quality, efficient, and scalable embedded systems.
Key Responsibilities
• Design, develop, and maintain embedded software applications in C++ for Renesas MCUs and other embedded platforms.
• Optimize code for performance, memory usage, and power efficiency in resource-constrained environments
• Develop and maintain CMAKE-based build systems for embedded projects, ensuring seamless integration with CI/CD pipelines
• Collaborate with hardware engineers to define software requirements and interfaces for embedded systems
• Debug and troubleshoot complex issues in embedded systems, including hardware-software interactions
• Implement and maintain real-time operating systems (RTOS) and bare-metal firmware solution
• Write clean, modular, and well-documented code following industry best practices
• Participate in code reviews, design discussions, and technical documentation
• Stay up to date with the latest trends and advancements in embedded systems, C++ standards, and development tools.
Qualification
• 5+ years of professional experience in embedded software development using C++
• Strong expertise in Microcontroller Units (MCUs) and embedded systems programming
• Hands-on experience with Renesas microcontrollers (e.g., RX, RA, RL78 families) and associated development tools (e.g., e² studio, CS+)
• Proficiency in CMAKE for building and configuring embedded software projects
• Experience with automotive embedded systems and standards (e.g., MISRA, ISO 26262)
• Solid understanding of real-time operating systems (RTOS) and bare-metal programming
• Experience with low-level hardware interfaces such as UART, SPI, I2C, CAN, and GPIO
• Familiarity with debugging tools (e.g., JTAG, oscilloscopes, logic analyzers) and techniques for embedded systems
• Knowledge of software development lifecycle (SDLC) and version control systems (e.g., Git)
• Strong problem-solving skills and the ability to work independently or in a team environment
• Excellent communication skills, both written and verbal