Location: Grand Rapids, MI
Summary: We are seeking a motivated and capable Automation Software Developer to contribute to automation solutions integrating PLCs, software applications, machine vision, and data platforms. This role focuses on hands-on development and support of systems that enable Industry 4.0 initiatives and smart manufacturing projects.
Essential Duties and Responsibilities:
- Design, develop, and maintain automation-focused applications and features
- Build, test, and support APIs for data collection, processing, and integration
- Contribute to computer vision applications and automation workflows
- Work with PLC-integrated systems and industrial data sources as needed
- Participate in the full software development lifecycle: requirements, coding, testing, documentation, deployment, and support
- Troubleshoot and resolve issues across the stack (front-end, back-end, infrastructure)
- Provide ongoing support for automation applications and systems in production
- Investigate and resolve issues reported by users and operations teams
- Participate in root cause analysis and implement fixes to prevent recurrence
- Assist with monitoring system health and performance
- Support deployments and updates to minimize operational impact
- Work with senior team members to escalate and resolve complex issues
- Contribute to documentation and knowledge sharing
- Contribute to Agile ceremonies including stand-ups, planning, and retrospectives
Required Skills and Qualifications:
- Bachelor’s degree in Computer Science, Engineering, or related field, or equivalent experience
- Experience with backend languages such as Python, C#, or TypeScript
- Experience with frontend frameworks such as Angular or React
- Experience working with relational databases such as SQL Server or Postgres
- Familiarity with REST APIs and integration patterns
- Understanding of software development best practices
- Strong problem-solving and debugging skills
- Ability to work in a collaborative, remote team environment
- Willingness to learn new technologies
Preferred Qualifications
- Experience with PLCs or industrial automation systems
- Experience with SCADA systems, IIoT platforms, or industrial data acquisition
- Experience with computer vision tools or frameworks (OpenCV, TensorFlow, PyTorch, YOLO)
- Exposure to containerization technologies such as Docker
- Basic familiarity with Kubernetes or K3s
- Experience with cloud platforms such as Azure, AWS, or GCP
- Experience in manufacturing, logistics, or industrial automation
- Exposure to messaging systems such as MQTT and OPC-UA
Languages, Frameworks, and Tools
We commonly use the following tools in our development process. This is not an exhaustive list, but familiarity with these technologies will be considered advantageous:
- Programming Languages: Python, C#, TypeScript
- Frameworks & Libraries: .NET, ASP.NET Core, Angular, React
- Containerization & Orchestration: Docker, Kubernetes, K3s
- Cloud & Architecture: Azure, microservices architectures
- Databases: PostgreSQL, SQL Server
- Messaging: MQTT, OPC-UA
This list of duties is not intended to be all-inclusive and may be expanded to include other duties or responsibilities that senior management may deem necessary
