Senior Software Engineer – Golang

Posted 2 weeks ago

Apply Now

Resume Score

Check how well your resume matches this job before you apply.

Sign in to check score

About the role

  • Senior Software Engineer creating C++ and Golang connectors for PLCs. Developing systems for real-time data integration within industrial environments.

Responsibilities

  • Develop C++ and Golang-based southbound connectors that communicate directly with PLCs and industrial control systems using protocols such as OPC-UA, Modbus, EtherNet/IP, PROFINET, and DNP3.
  • Implement support for IIoT protocols such as MQTT, CoAP, and SOAP, enabling effective communication with industrial devices and sensors.
  • Build connectors for streaming protocols such as WebSockets and HTTP/2, enabling real-time data streaming and communication with external systems.
  • Implement robust error handling and fault-tolerance mechanisms to ensure connectors are resilient to failures in OT environments, delivering a seamless user experience.
  • Collaborate with cross-functional teams — including product managers, OT/controls engineers, and other developers — to understand requirements and deliver high-quality integration solutions.
  • Conduct thorough testing, including unit tests, integration tests, and hardware-in-the-loop tests, to validate the functionality and performance of southbound connectors.
  • Optimize code and apply best practices to enhance connector performance, latency, and scalability.
  • Provide clear and comprehensive technical documentation for all connectors and APIs, enabling seamless adoption by other team members and customers.
  • Monitor connector performance, track metrics, and implement logging practices to troubleshoot and resolve issues efficiently.
  • Stay current with advancements in the C++, Golang, and industrial automation ecosystems, continuously developing your skills and knowledge.
  • Contribute to the development of our open-source projects, sharing expertise with the wider developer community.

Requirements

  • Bachelor's or Master's degree in Computer Science, Software Engineering, Electrical Engineering, or a related field.
  • Proven experience as a Software Engineer with a minimum of 5+ years of relevant work experience.
  • Strong proficiency in C++ with Golang experience highly desirable.
  • Demonstrated experience developing southbound connectors for PLCs and industrial control systems, with hands-on knowledge of industrial protocols such as OPC-UA, Modbus, EtherNet/IP, or PROFINET.
  • Deep understanding of networking concepts, real-time communication, and industrial automation environments.
  • Experience implementing support for IIoT protocols is highly desirable.
  • Solid working knowledge of data serialization, error handling, and security principles in integration projects — 5+ years of experience preferred.
  • 5+ years of experience with version control systems (e.g., Git) and collaborative development practices.
  • Excellent problem-solving skills and the ability to analyze complex integration challenges in OT environments.
  • Strong communication skills and the ability to work collaboratively with cross-functional teams including engineers from both software and industrial automation backgrounds.

Benefits

  • Health insurance
  • Professional development opportunities
  • Flexible work arrangements

Job type

Full Time

Experience level

Senior

Salary

CA$125,000 - CA$170,000 per year

Degree requirement

Bachelor's Degree

Tech skills

SOAPGo

Location requirements

HybridSanta ClaraCanada

Report this job

Found something wrong with the page? Please let us know by submitting a report below.