Position: Embedded Systems Developer (C++, QT/QML, RTOS, Linux)
Location: Pune
Experience: 3+ years
Domain: Embedded Systems / Automotive / Consumer Electronics
Job Summary:
We are looking for a skilled Embedded Systems Developer with experience in C++, ROS, and Linux to join our development team. The ideal candidate will have hands-on experience in embedded systems development, designing efficient software solutions, and integrating advanced features for embedded devices.
Key Responsibilities:
Design, develop, and maintain embedded software applications for various devices using C++, QT/QML, and ROS.
Develop user interfaces using QT/QML for embedded systems, ensuring efficient performance and smooth user interaction.
Work with ROS (Robot Operating Systems) to ensure high-performance, low-latency, and reliable execution of embedded applications.
Develop and optimize software for embedded systems running on Linux platforms.
Integrate hardware and software components, ensuring seamless communication between device firmware and higher-level application software.
Collaborate with cross-functional teams including hardware engineers, firmware developers, and UI/UX designers to deliver complete embedded solutions.
Troubleshoot, debug, and optimize existing embedded software for performance and reliability.
Participate in code reviews, unit testing, and documentation to ensure high-quality software delivery.
Stay updated with the latest trends in embedded systems and propose improvements to the existing software stack.
Required Skills & Qualifications:
Programming Languages:
Strong expertise in C++, Robot OS for embedded applications.
Experience with Linux
Linux:
Strong knowledge of Linux development, particularly in embedded Linux (Yocto, Buildroot, etc.).
Experience with configuring and customizing the Linux kernel for embedded platforms.
Embedded Hardware Interface:
Experience in interfacing with embedded hardware such as sensors, actuators, displays, etc.
Knowledge of communication protocols like I2C, SPI, UART, CAN, etc.
Additional Skills:
Good understanding of embedded software design principles, memory constraints, and performance optimization.
Strong debugging and problem-solving skills.
Familiarity with version control systems such as Git.
Experience with unit testing, integration testing, and debugging tools (GDB, JTAG, etc.).
Experience with Agile development methodologies.
Education: Bachelors or Masters degree in Computer Science, Electronics, Embedded Systems, or a related field.
Desired Skills:
Familiarity with multithreading and synchronization in real-time systems.
Experience with hardware-level programming (e.g., working with microcontrollers, FPGA).
Understanding of automotive or consumer electronics standards for embedded systems.
Knowledge of networking protocols (TCP/IP, MQTT, etc.) in embedded systems.
Keyskills: jtag c++ firmware development robot qml git rtos linux development fpga yocto embedded systems linux mqtt debugging multithreading i2c embedded hardware buildroot firmware programming tcp qt gdb software testing ip embedded linux spi linux kernel rts microcontroller uart agile
At Cyient, we work towards improving the daily lives of people with unwavering focus. From a quieter flight to a safer train journey, a more reliable energy supply, or a faster internet connection, we provide engineering, manufacturing, geospatial, network and operations management services to indus...