Embedded software consulting and outsourcing

Senior embedded engineering, when you need it

Fourteen years of building latency- and throughput-critical software, from bare-metal microcontrollers to Yocto Linux. I join your team, take a subsystem off your hands, or help you find out why the team isn't moving as fast as it should.

What I do

From the register level to the management table

Microcontroller firmware

Firmware for STM32, ESP32 and other Cortex-M parts, on FreeRTOS or bare metal: drivers, boot and update paths, performance work and the debugging that needs an oscilloscope and a logic analyzer.

For example: bare-metal I2C and UART drivers at Itho Daalderop; post-quantum signing on a Cortex-M33 from 140 to 27 ms.

Embedded Linux

Yocto and Buildroot systems, real-time Linux (RT_PREEMPT), user-space drivers with UIO, sysfs and io_uring, systemd integration and over-the-air updates with Mender.

For example: 50% more network throughput in Qblox's instrument firmware; a change of hardware manufacturer at ChargePoint.

Team and codebase assessment

A structured look at your code, architecture, process and team, ending in findings and prioritised recommendations that management can act on.

For example: the assessment at Itho Daalderop that shaped its team structure, hiring and architecture.

Security and compliance readiness

Preparing products for the EU Cyber Resilience Act and ISO 21434: threat analysis, secure boot, signed updates, SBOMs and the processes behind them.

For example: introducing ISO 21434 processes and tooling for ChargePoint's vehicle telematics.

Outsourced development

A defined subsystem, delivered with tests and documentation and handed over to your team. Protocol work is a speciality: CAN, Modbus, Profibus, SCPI, OCPP and CHAdeMO.

For example: CHAdeMO and OCPP 2.0.1 Smart Charging for 500 kW chargers; features for Vialis's tunnel speed alarm system.

Coaching and technical leadership

Mentoring embedded engineers, technical product ownership, and interim engineering management when a team needs someone to steer.

For example: acting engineering manager for 12 engineers at ChargePoint; mentoring five engineers at Itho Daalderop.

Ways to work together

Pick the shape that fits the problem

Rates depend on the type and length of the engagement. I'm happy to give an indication in the first conversation.

Part of your team

I join your engineers for a few days a week or full time, on-site anywhere in the Netherlands or remote, and work in your tools, process and code base.

Fixed-scope project

A clearly defined deliverable, such as a driver, a protocol stack or a boot and update path, with tests and documentation, delivered and handed over to your team.

Assessment

A short, scoped engagement that ends in a written report and a presentation to management, with recommendations ranked by impact.

Toolbox

Technologies I work with

The tools matter less than the judgement behind them, but this is where that judgement was built.

Languages

  • C++20/26
  • C
  • Rust
  • Python
  • Go
  • C#
  • Bash

Embedded

  • STM32
  • ESP32
  • Cortex-M
  • Cortex-R
  • FreeRTOS
  • Bare metal
  • Yocto
  • Buildroot
  • RT_PREEMPT
  • UIO
  • io_uring
  • Mender
  • QEMU

Protocols

  • CAN
  • Modbus
  • Profibus
  • SCPI
  • I2C
  • UART
  • TCP/IP
  • gRPC
  • ZeroMQ
  • OCPP 2.0.1
  • CHAdeMO

Standards

  • EU Cyber Resilience Act
  • ISO 21434
  • MISRA C++:2023
  • NEN 3410

Let's talk about your product

Tell me what you're building and where it hurts, and we'll find out whether I can help.