Senior Software Engineer / Technical Lead

HomeJobs Senior Software Engineer / Technical Lead

Senior Software Engineer / Technical Lead

About the Role

We are looking for a Senior Software Engineer / Technical Lead to design and develop a software gateway that performs protocol translation between Modbus, MQTT, and ZMQ. This gateway will act as a critical bridge between industrial field devices and higher-level IIoT/edge systems, enabling reliable, real-time data exchange in industrial environments.

The ideal candidate is a hands-on systems-level engineer with deep expertise in C/C++, strong understanding of industrial communication protocols, and proven experience building robust, production-grade software for edge computing / IIoT deployments. This role requires both strong individual technical contribution and the ability to lead design decisions for a mission-critical component of our industrial automation stack.


Key Responsibilities

  • Design, develop, and maintain a software gateway for protocol translation between Modbus (RTU/TCP), MQTT, and ZMQ.

  • Implement and optimize Modbus master/slave communication with field devices (PLCs, sensors, controllers), ensuring reliability and low latency.

  • Architect the gateway for performance, fault tolerance, and maintainability in resource-constrained edge environments.

  • Develop and maintain the codebase primarily in C/C++, following industry best practices for embedded/systems-level software.

  • Containerize the gateway application using Docker for deployment on Linux/Ubuntu-based edge devices.

  • Collaborate with cross-functional teams (firmware, cloud, DevOps, QA) to define integration points and data flow across the IIoT stack.

  • Establish coding standards, review processes, and technical documentation for the gateway component.

  • Troubleshoot and resolve issues related to protocol compatibility, network communication, and device connectivity in field deployments. 


Required Skills & Experience

  • 10+ years of professional software development experience, with strong command over C and C++ (modern C++ preferred).

  • Proven experience in edge computing or Industrial IoT (IIoT) application development.

  • Hands-on experience implementing or integrating Modbus (RTU and/or TCP) communication — this is a critical requirement.

  • Working knowledge of MQTT and ZMQ (ZeroMQ) messaging protocols and their use in distributed/edge architectures.

  • Strong experience developing and deploying applications on Linux/Ubuntu environments.

  • Practical experience with containerization technologies (Docker) for building and deploying edge applications.

  • Solid understanding of networking fundamentals, multi-threading, and real-time/low-latency system design.

  • Strong debugging, performance tuning, and problem-solving skills in production environments.

Skills Must Have
  • Mandatory Science graduate
Recruitment

Let us help your Recruitment.