Production software spanning APIs, system integrations, audit functions and a unified portal accross Lovells automotive and industrial departments — with an emphasis on user experience for non techinical users.
Building software that feels effortless.
I design and ship reliable software across the stack — from high-performance Rust web services, computer vision programs and embedded systems to polished web applications in TypeScript.
Where I've built things.
A compact view of the companies where I have worked across product engineering, backend systems, infrastructure and connected devices.
From low-level hardware interfaces to real-time data pipelines, media streaming and modern web applications.
Interconnected Java microservices to process Swift messages and SEPA bank transfers.
Things worth sharing.
Libraries and experiments that are more useful when somebody else can build on them.
MLX90640 driver
A generic interface for the MLX90640 thermal imaging sensor, designed around embedded-friendly abstractions.
Dyson ltd: async-enabled sensor drivers
Experiments and reusable interfaces for motion hardware in pure Rust.
The collaboration with Dyson ltd produced a very interesting outcome.
VL53L1X-hal
A platform agnostic Hardware Abstraction Layer for the Time of Flight distance sensor vl53l1x in pure Rust.
Reactive paradigm in Java
Reactive programming with Java and Spring WebFlux demonstrates a scalable, non-blocking microservices architecture for e-commerce. Built with Spring WebFlux, Project Reactor, Next.js, and Docker, the PoC showcases asynchronous request handling and efficient resource utilization in distributed applications.
Think twice, code once !
From serial to cloud.
A few directions I enjoy exploring when there is no product brief telling me what to build.
Event Loop & Asynchronous paradigm
This modern way of building servers improves scalability and responsiveness by handling many concurrent tasks without blocking threads while waiting for I/O. This reduces resource consumption, improves throughput, and enables efficient use of system resources.
Rust as standard for industrial machinery
Rust delivers memory safety, predictable performance, and high reliability without garbage collection. Its zero-cost abstractions and strong type system reduce runtime errors, improve resource efficiency, and enable robust, maintainable software for real-time control systems.
Embedded motion control
Exploring deterministic motion systems, EtherCAT hardware and Rust firmware for industrial-style control.
Data-heavy applications
Data-heavy applications with Redis, PostgreSQL, and MongoDB combine high-speed caching, reliable relational storage, and flexible document-based data management. This enables efficient data access, scalable architectures, and high-throughput processing for demanding industrial applications.