Senior Embedded developer - C++

Information Technology Bangalore, Karnataka ITC – Vadodara, Gujarat




  1. List the essential functions and major activities in order of their importance.


  • Building applications on embedded Linux systems with C++
  • Sometimes using higher level frameworks like OSGI (Java) or Node-Red
  • Implementation of measurement and control algorithms
  • Implementing connectivity interfaces to external measurement systems, field level devices, PLCs, and SCADA systems
  • Implementing connectivity interfaces to enterprise IT systems or external cloud solutions
  • Defining test concepts and execution of software test
  • Documentation of development work


Part 2 Describe the Person


  1. Minimum professional and educational background desired (include years of experience)


  • Bachelor of Science/Engineering Degree in Electronics Engineering or Computer Science; or equivalent experience is required
  • Minimum of 4 to 8 years’ experience in a Linux embedded application development.



  1. Describe the most important competencies required of the individual.



  • Proficiency in programming with C++ in Linux
  • Good understanding of mathematical und physical principles
  • Experience in building user space applications on embedded Linux-Systems (e.g. on RasPi, BeagleBone, etc.)
  • Experience in packet management/ deploying software under embedded Linux
  • Experience in usage of IOT related communication protocols (MQTT, OPC-UA, REST-APIs)



  • Knowledge about industrial fieldbus systems and used protocols (Modbus, BacNet, DNP3, etc.)
  • JAVA and OSGI / Eclipse Kura framework
  • Deeper understanding of the Linux-Yocto distribution
  • Node-RED
  • Build and test automation (Python, Jenkins)
  • Matlab under Linux
  • Container technology under Linux (e.g. Docker)
  • PLC programming