- Develop and optimize embedded and system-level applications using C/C++ in a Linux environment.
- Design and implement Data Structures to optimize system performance and scalability.
- Work with Socket Programming to create efficient and secure communication protocols between distributed systems.
- Develop multi-threaded applications to maximize system throughput and responsiveness.
- Work on DEOS (Real-Time Operating System) to ensure high reliability and real-time functionality in embedded systems.
- Collaborate with cross-functional teams within the Platform COE to deliver high-performance solutions.
- Develop graphical user interfaces (GUIs) using QT for embedded or application-based systems.
- Design and implement platform-specific software solutions for diverse hardware environments.
- Perform unit testing, debugging, and performance analysis to identify and resolve issues.
- Participate in code reviews and adhere to best coding practices and standards.
- Troubleshoot and solve system-level issues in a multi-threaded, distributed environment.
Minimum Qualifications :
- Bachelors/masters in computer science/Electronics Engineering with 14 years of embedded software development in resource constraint and/or low energy environments
- Exceptional problem-solving abilities.
- Strong proficiency in C++ 17/19 programming for embedded systems.
- Strong proficiency in User Interface (GUIs) using QT for embedded or application-based system
- Proven experience working with microcontrollers in real-time systems.
- Expertise in embedded engineering projects, including developing unit, integration, and system-level tests.
- Experience with and deep understanding of Ethernet Network development
- Experience and a good understanding of CI/CD pipelines, Bamboo, Jenkins
- Experience with Linux Kernel and/or FreeRTOS
- Advanced knowledge of Linux / Yocto / XILINX SDK
- Comprehensive knowledge of the CMake Build system.