- Full-Lifecycle Embedded Development:
Lead the design, implementation, and rigorous testing of embedded software solutions across various platforms and applications. - Efficient & Reliable Coding:
Oversee the development of high-performance, reliable code for microcontrollers and embedded systems. - Hardware-Software Integration:
Collaborate closely with hardware teams to ensure smooth and robust integration between software and hardware components. - Advanced Troubleshooting & Debugging:
Proactively identify and resolve complex hardware/software issues to ensure reliable system performance. - Testing & Quality Assurance:
Define and execute unit, integration, and system-level testing strategies to meet high standards of functionality and performance. - Documentation & Knowledge Sharing:
Develop and maintain comprehensive documentation covering software designs, test results, and production support procedures. - Performance Optimization:
Lead initiatives to optimize embedded systems with respect to speed, memory usage, and power efficiency. - Maintenance & Support:
Ensure the continued stability and effectiveness of deployed systems through ongoing maintenance and technical support. - Cross-Functional Collaboration:
Work in partnership with product management, hardware, and QA teams to deliver integrated and effective embedded solutions. - Communication & Reporting:
Provide regular progress updates, flag risks, and escalate issues to management to support timely and strategic decision-making.
Qualifications & Education Requirements:Education:Bachelor’s or Master’s degree in Computer Engineering or a related field.Experience:5 to 11+ years of experience in embedded software development.Proven track record of team leadership in embedded projects.Competencies & Skills:Programming:Expert in C/C++ for low-level embedded development.Proficient in Python for scripting or higher-level automation tasks.Familiarity with C# is a plus.RTOS & Systems:Strong understanding of Real-Time Operating Systems (RTOS), including scheduling, inter-process communication (IPC), memory management, and interrupts.Embedded Linux:Hands-on experience with embedded Linux (or similar systems), including kernel, driver, and user-space development.Optimization:Proven ability to optimize algorithms for performance, memory, and power efficiency.Tools & Collaboration:Proficient in Git for version control and collaborative development.Skilled in designing and conducting hardware/software validation tests.Security:Understanding of embedded security best practices and common vulnerabilities.Familiarity with advanced security techniques is a plus.Mobile Integration (Optional):Basic knowledge of Android or iOS development is a plus.