Edge Software Engineer
Postaladdress
Netherlands
5 days ago
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Apply on startup.jobs
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
5 years minimum
Working hours
Regular working hours
Languages
English
Job source
Tech stack
Data Analysis
Automation of Tests
Fieldbus
C++ (Programming Language)
CAN Bus
Code Review
Communications Protocols
Continuous Integration
Linux
Device Drivers
Linux on Embedded Systems
Firmware
+15 more
Supervisory Control and Data Acquisition (SCADA)
Python (Programming Language)
Modbus
Message Queuing Telemetry Transport (MQTT)
Software Engineering
Transmission Control Protocol (TCP)
Building Management System (BMS)
Cloud Platform System
Test Scripts
State Machines
Yocto
Build Tools
Industrial Software
Software Version Control
GXP
Job description
- Design, build and own the production site controller software, from architecture to deployment and long-term maintenance.
- Build robust data acquisition and processing: reliable, time-stamped collection of measurements and events from the BMS, power converters and inverters, with local storage, buffering and forwarding to the cloud.
- Implement low-level communication and control over Controller Area Network (CAN), Modbus TCP and Modbus RTU, including device drivers, protocol handling, state machines, sequencing and safe fault handling.
- Build commissioning and diagnostic interfaces into the site controller, so field engineers can bring a site up, configure it and troubleshoot it quickly. Where needed, extend these to customer-facing interfaces, both to the customer’s supervisory control and data acquisition (SCADA) system and directly to users.
- Run integration and validation work on our test setup: write test scripts and tooling, analyse data and turn findings into fixes and requirements.
- Define the interfaces between the site controller, BMS firmware and cloud platform, together with the relevant engineers.
- Help lay the foundation for later energy management and dispatch features.
- Set good engineering practice for edge software: version control, code review, automated testing, continuous integration and controlled releases.
Requirements
- 5+ years of professional software engineering experience, with a significant part on embedded Linux, edge or industrial systems.
- Strong skills in C++, Go or Rust, plus Python for tooling, testing and data analysis.
- Hands-on experience with industrial and fieldbus protocols, ideally CAN and Modbus.
- Experience building reliable data acquisition pipelines and software that runs unattended in the field.
- Comfortable working close to hardware: reading datasheets and schematics, and using an oscilloscope, CAN analyser or logic analyser to find the root cause of a problem.
- A systems mindset and good judgement about safety, robustness and failure modes.
- Willingness to work hands-on at our test site and, occasionally, at customer sites.
- Fluent English.
Nice to have:
- A background in electrical engineering is a strong plus.
- Experience with battery storage, solar PV, inverters or other power electronics.
- Familiarity with real-time Linux, Yocto or similar embedded build systems.
- Experience with grid communication protocols such as IEC 61850, SunSpec or DNP3.
- Experience with cloud connectivity for devices, such as MQTT.
Benefits & conditions
- Ownership of a core piece of our product, with the chance to shape its architecture from the start.
- Work on real hardware and real deployments, not just code.
- A small, experienced team where your work has a direct impact.
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Apply on startup.jobs
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Good distractions
Loading talks and stories from around this role…