Automation Software DeveloperLocation: Grand Rapids, MISummary: 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 ResponsibilitiesDesign, develop, and maintain automation-focused applications and featuresBuild, test, and support APIs for data collection, processing, and integrationContribute to computer vision applications and automation workflowsWork with PLC-integrated systems and industrial data sources as neededParticipate in the full software development lifecycle: requirements, coding, testing, documentation, deployment, and supportTroubleshoot and resolve issues across the stack (front-end, back-end, infrastructure)Provide ongoing support for automation applications and systems in productionInvestigate and resolve issues reported by users and operations teamsParticipate in root cause analysis and implement fixes to prevent recurrenceAssist with monitoring system health and performanceSupport deployments and updates to minimize operational impactWork with senior team members to escalate and resolve complex issuesContribute to documentation and knowledge sharingContribute to Agile ceremonies including stand-ups, planning, and retrospectivesRequired Skills and QualificationsBachelor's degree in Computer Science, Engineering, or related field, or equivalent experienceExperience with backend languages such as Python, C#, or TypeScriptExperience with frontend frameworks such as Angular or ReactExperience working with relational databases such as SQL Server or PostgresFamiliarity with REST APIs and integration patternsUnderstanding of software development best practicesStrong problem-solving and debugging skillsAbility to work in a collaborative, remote team environmentWillingness to learn new technologiesPreferred QualificationsExperience with PLCs or industrial automation systemsExperience with SCADA systems, IIoT platforms, or industrial data acquisitionExperience with computer vision tools or frameworks (OpenCV, TensorFlow, PyTorch, YOLO)Exposure to containerization technologies such as DockerBasic familiarity with Kubernetes or K3sExperience with cloud platforms such as Azure, AWS, or GCPExperience in manufacturing, logistics, or industrial automationExposure to messaging systems such as MQTT and OPC-UAWe 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#, TypeScriptFrameworks & Libraries:.NET, ASP.NET Core, Angular, ReactContainerization & Orchestration: Docker, Kubernetes, K3sCloud & Architecture: Azure, microservices architecturesDatabases: PostgreSQL, SQL ServerMessaging: MQTT, OPC-UAThis 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