Skill diminta
.NETASP.NETCI/CDCommunicationDockerGitJavaScriptPythonSQLTypeScriptgRPC
Deskripsi
Job description for Software Engineer (SECS/GEM and Factory Automation) at INSPHERE TECHNOLOGY PTE LTD
INSPHERE TECHNOLOGY is a Singapore-based software innovation company established in 2010, delivering SECS/GEM connectivity and factory automation solutions (including legacy equipment/tools) in the semiconductor and photovoltaic industries.
We support global OEMs and semiconductor fabs with production-proven software that enables smart factory integration, interoperability, and operational scalability.
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.
- Key Responsibilities
- Design and develop reliable applications using C# and the .NET platform.
- Develop modern Windows desktop applications using WPF, WinForms, and MVVM.
- Research and evaluate emerging technologies, frameworks, development tools, and architectural approaches.
- Identify practical use cases for new technologies and translate them into prototypes or production-ready solutions.
- Build reusable software libraries, SDKs, services, APIs, and integration components.
- Design communication between applications using REST APIs, gRPC, WebSockets, messaging, or other suitable technologies.
- Develop backend services, Windows services, and distributed software components.
- Work with databases, structured data, application logs, and real-time information.
- Review existing software and propose improvements to its architecture, maintainability, usability, and performance.
- Troubleshoot complex software, integration, communication, and deployment issues.
- Produce proof-of-concept applications to validate new technical ideas.
- Contribute ideas for product improvements and future software capabilities.
- Collaborate with internal engineers and customers to understand technical problems and recommend suitable solutions.
- Prepare clear technical documentation, architecture diagrams, and implementation guidelines.
- 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
- 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
- AI-assisted development and practical AI integration
- Event-driven systems and messaging technologies
- Cross-platform application frameworks
- Application security, performance, and deployment practices
- 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
- Mitsubishi, Omron, Siemens, or Beckhoff PLCs
- OPC UA, Modbus TCP, MC Protocol, SLMP, EtherNet/IP, ADS, or FINS
- MES, EAP, SCADA, SPC, RMS, or other factory systems
- Equipment functions such as alarms, events, recipes, remote commands, traces, equipment constants, and state models
- C++, Python, JavaScript, TypeScript, or other programming languages
- The Type of Person We Are Looking For
You may be a good fit for this position if you
- Enjoy coding and building software, not merely coordinating development work.
- Regularly explore new frameworks, tools, libraries, or development approaches.
- Can explain practical business or engineering use cases for new technologies.
- Like taking an unfamiliar technical problem and finding a workable solution.
- Are comfortable moving between user interfaces, backend services, APIs, databases, and system integration.
- Care about software quality, architecture, usability, and maintainability.
- Are willing to question existing approaches and propose better ones.
- Can work independently while contributing effectively within a technical team.
Qualifications
- Diploma or degree in Computer Science, Software Engineering, Information Technology, Mechatronics, Electrical Engineering, or a related discipline.
- Relevant professional software-development experience.
- A strong project portfolio, GitHub profile, technical demonstrations, or personal software projects will be viewed positively.