Tasks
You work on everything between the machine PLC and the MQTT broker, alongside the engineer who built the current setup. Which parts you take over completely and which you share depends on your strengths. Concretely:
PLC and machine side
- Bring the PMAS message format into the CB1 machine software (Siemens S7, TIA Portal V18 with HMI) and keep it in sync with the payload contract: cumulative counters, machine status, error codes, timestamps from the PLC clock.
- Decide and implement how data leaves the PLC: MQTT publishing from the PLC itself, or a read on the edge device (S7 protocol or OPC UA) that publishes on its behalf. Pick one, justify it, standardise it.
- Manage PLC software versions across the fleet, including safe update and rollback procedures for machines already running at customers.
- Ensure clock discipline on the PLCs (NTP, local time zone per plant), since every duration KPI is computed from PLC timestamps.
Edge devices and site gateway
- Develop and maintain the software on the Raspberry Pi based edge devices next to each machine: MQTT client, buffering and store and forward during uplink outages, unique client IDs, credential handling, health reporting.
- Develop and maintain the site gateway: isolated machine network, routing and firewall, outbound only TLS and NTP, remote maintenance access, watchdogs, recovery from a spare device.
- Help turn the current setup into a provisioning process: golden image, per machine configuration, fleet wide updates without a site visit. A new machine goes from unboxing to "visible in the dashboard" in under an hour.
- Monitor the edge layer so that we know about a degraded device before the customer does.
Broker and data contract
- Administer the HiveMQ Cloud clusters per customer: credentials, topic ACLs, client ID scheme, certificates.
- Maintain the payload contract together with the existing integration engineer. Changes are versioned and documented.
Commissioning and support
- Onboard new customers and new machines end to end, remotely where possible and on site where needed (primarily Europe and the United States).
- Act as second line when "the dashboard shows nothing" or "the numbers look wrong" and the cause sits between PLC and broker.
- Write the documentation you would have wanted on day one: onboarding sheets, runbooks, wiring notes.
Must have
- Siemens PLC programming in TIA Portal (SCL and LAD, S7-1200/1500 family). You can open an existing machine project, understand it and change it without breaking the machine.
- Industrial networking: PROFINET, VLANs, static and DHCP setups, firewalls, TLS basics. You have connected a machine to a network that was not built for it.
- Linux on Raspberry Pi or comparable single board computers: systemd, networking, images, headless operation, remote administration.
- Solid programming skills in Python or Node.js for edge software, and Git as a daily tool.
- MQTT in depth: versions 3.1.1 and 5.0, QoS levels, retained messages, last will, TLS, broker ACLs.
- Proficiency with AI coding tools is a hard requirement. You use Claude Code, Cursor, Copilot or comparable tools every day, you write and maintain project instructions for them, you review their output critically, and you are measurably faster with them than without. Our code and documentation are written with and for these tools. If you see AI tools as optional, this role is not for you.
- Working proficiency in English (all code, commits and documentation are in English). German is a plus for the machine side.
- Willingness to travel to customer plants, typically a few days per quarter.
- Availability of at least two days per week on a permanent basis, with the option to scale up during rollouts.
- You work as a freelancer (own company or registered self employed) and can invoice FALU AG.
Nice to have
- OPC UA, Snap7 or the Siemens open communication libraries.
- Node-RED, Docker on ARM, Ansible or similar fleet tooling.
- Machine building or commissioning experience: reading electrical schematics, 24 V control cabinet basics, HMI (WinCC).
- Administration of HiveMQ, Mosquitto or EMQX.
- A basic understanding of what happens after the broker (Node.js services, PostgreSQL, ClickHouse), so that you can talk to the cloud side at eye level.
- A clearly bounded, business critical scope with a colleague who knows the system and hands over properly. No cold start.
- A running production system with a real customer, not a greenfield slide deck.
- AI assisted development is how we work, not an experiment. You get the tools and the budget for them.
- Machines you can touch: a test bench at FALU in Rüti with real PLCs and edge hardware.
- Remote by default, on site in Rüti when hardware is involved. Travel to customer plants is paid on top of the rate.
- A permanent role, not a project with an end date: growing volume as more plants go live, on a freelance basis for as long as it works for both sides.
- Fast, uncomplicated invoicing and decisions from a small team.
If you have ever made a stubborn PLC talk to the cloud and have capacity to do it again with us, we would like to hear from you.
What to expect: a short call with Marc Wyss (CEO) within a week of your application, then a small practical task with a simulated PLC data source, a Raspberry Pi image and a broker endpoint. We look at how you work, not just at the result. After that, one conversation with our integration engineer and the team, then a decision and a contract.