Software Engineer – Factory Automation & PLC Integration

About the Role

We are looking for a highly capable and technology-driven Software Engineer who enjoys coding, exploring new technologies, and turning technical ideas into practical applications.

The ideal candidate is a genuine technology enthusiast—someone who keeps up with the latest software technologies, understands where they can be applied, and is excited to experiment, prototype, and build working solutions.

This is not limited to a traditional application-development role. You will evaluate technologies, design software architectures, build reusable components, and apply modern development approaches to industrial equipment connectivity and factory automation applications.

Experience with SECS/GEM, GEM300, PLCs, or industrial communication is advantageous but not mandatory. More importance will be placed on your coding ability, technical curiosity, problem-solving skills, and ability to learn unfamiliar technologies quickly.

Responsibilities:

  • Develop C#/.NET applications, Windows services, and integration modules for factory automation and equipment connectivity.
  • Connect to PLC-based equipment to collect machine data, alarms, status, recipes, production counts, and process parameters.
  • Review and understand existing PLC programs from legacy machines where permitted.
  • Work with PLC platforms such as Mitsubishi, Omron, Siemens, Beckhoff, or equivalent systems.
  • Map PLC registers, tags, I/O signals, alarms, and machine states for integration with factory systems.
  • Develop communication interfaces using industrial protocols such as MC Protocol, SLMP, OPC UA, Modbus TCP, Ethernet/IP, ADS, FINS, TCP/IP, REST, or vendor-specific APIs.
  • Integrate equipment data with MES, SPC, EAP, SCADA, historians, databases, or custom host systems.
  • Build Windows desktop applications, backend services, and APIs for equipment communication and data processing.
  • Troubleshoot PLC communication, software, network, database, and factory integration issues.
  • Support testing, commissioning, deployment, documentation, and customer site support.
  • Follow good engineering practices including code reviews, testing, source control, CI/CD, and AI-assisted development with proper validation.

Core Requirements

  • Strong hands-on programming experience in C# and .NET.
  • Strong understanding of object-oriented programming, software design principles, and clean coding practices.
  • Experience developing desktop applications using WPF or WinForms.
  • Familiarity with MVVM or similar application architecture patterns.
  • Ability to design software beyond individual screens or functions.
  • Experience working with APIs, services, databases, and application integration.
  • Strong debugging, analytical, and technical problem-solving skills.
  • Ability to learn unfamiliar frameworks, protocols, and technologies independently.
  • Curiosity about current and emerging software technologies.
  • Ability to assess not only how a technology works, but also where and why it should be used.
  • Comfortable building prototypes and experimenting with different technical approaches.
  • Able to communicate technical concepts clearly to both technical and non-technical stakeholders.

Technologies We Value

Candidates do not need to know every technology listed below. We value engineers who can understand new technologies and apply the right tools to the right problem.

  • C#, .NET, ASP.NET Core
    AI-assisted development and practical AI integration
  • WPF, WinForms, MVVM
  • REST APIs, gRPC, SignalR, WebSockets
  • Windows services and background services
  • SQL and NoSQL databases
  • Docker and containerised applications
  • Git and CI/CD practices
  • Cloud, edge, or distributed application architectures

Good-to-Have Experience

  • The following experience will be advantageous but is not mandatory:
  • SECS/GEM or GEM300 standards and equipment integration
  • Semiconductor manufacturing or factory automation applications
  • PLC communication and industrial equipment connectivity

See also

要針對這個職缺調整履歷嗎?

目前無法檢查您與這個職缺的符合程度;請先將履歷加入個人檔案,下次即可查看。

A new version of freehire is available