(352) FASTTEK | (352) 327-8835
FASTTEK GLOBALpowered by Fast Switch - Great Lakes
info@fasttek.com
(352) FASTTEK | (352) 327-8835
Chennai, Tamil Nadu
Software Engineer Practitioner #1028579
Job Description:
  • Software Engineer - Industrial Communication Driver Development.
  • We are looking for a talented and experienced Software Engineer to design, develop, and maintain robust and reliable communication drivers and gateways that connect industrial Programmable Logic Controllers (PLCs) and other factory floor equipment to enterprise servers, databases, and cloud platforms.
  • In this role, you will be a key player in enabling data flow from the physical world of automation into the digital world of data analysis, visualization, and control.
  • You will work closely with automation engineers, IT professionals, and other software teams to build scalable and secure solutions.
 
Skills Required:
  • Application Development
 
Skills Preferred:
  • C, C#, C++, POSTGRES, PostgreSQL, Problem Solving
 
Experience Required:
  • 5+ years, in software development, with a significant focus on industrial automation or systems integration. Strong proficiency in C/C++, C#, Java, Python one or more relevant programming languages Solid understanding and practical experience implementing or working with common industrial communication protocols (CIP, Profinet, TCPModbus, OPC UA, Ethernet/IP, etc.).
  • Experience with OPC UA is often highly valued.
  • Strong knowledge of TCP/IP networking fundamentals, including sockets programming, network diagnostics, and understanding of industrial network topologies. Experience developing on and troubleshooting issues in relevant operating system environments (e.g., Windows, various Linux distributions).
  • Experience with version control systems (Git), issue tracking, unit testing, and agile development methodologies.
  • Excellent analytical and problem-solving skills, with the ability to debug complex issues in distributed systems involving hardware and software.
 
Experience Preferred:
  • Experience with specific PLC programming environments or hardware (e.g., Siemens TIA Portal/Step 7, Rockwell Studio 5000, Beckhoff TwinCAT).
  • Experience with MQTT or other lightweight messaging protocols commonly used in IoT contexts.
  • Experience with cloud platforms (AWS, Azure, GCP) and their respective IoT/data services.
  • Familiarity with database systems (SQL Server, PostgreSQL, MongoDB, etc.).
  • Knowledge of industrial cybersecurity principles and practices.
  • Experience with containerization technologies (Docker, Kubernetes).
  • Understanding of real-time operating systems or deterministic systems.
  • Familiarity with SCADA, MES, or Historian systems.
  • Experience working in a regulated industry (e.g., Automotive).
 
Education Required:
  • Bachelor's Degree
 
Additional Information :
  • Architect, design, code, test, and deploy software drivers and services that facilitate data exchange between various PLC brands (e.g., Allen-Bradley, Siemens, Schneider Electric, Mitsubishi) and server-side applications.
  • Implement and work with a variety of industrial communication protocols, including but not limited to Ethernet/IP, PROFINET, CIP, MQTT, Modbus TCP/RTU, OPC UA and vendor-specific protocols.
  • Develop interfaces to push/pull data from drivers into databases (SQL, NoSQL), message queues (Kafka, RabbitMQ, MQTT brokers), APIs, and potentially cloud services (AWS IoT, Azure IoT Hub, Google Cloud IoT Core).
  • Ensure drivers are highly performant, fault-tolerant, and capable of handling large volumes of data with low latency, critical for real-time or near-real-time applications.
  • Diagnose and resolve complex communication issues that span both the IT and OT layers, often requiring collaboration with automation technicians and network engineers.
  • Implement and follow best practices for securing communication channels between OT and IT networks, considering potential cybersecurity risks in industrial environments.
  • Develop and execute unit tests, integration tests, and system tests for communication drivers to ensure reliability and correctness.
  • Create clear and concise technical documentation for drivers, APIs, configuration guides, and troubleshooting procedures.
  • Work effectively in an agile environment, collaborating with cross-functional teams including automation engineers, IT operations, data engineers, and application developers.
  • Contribute to discussions on overall system architecture, data models, and technology choices for industrial data connectivity.