
I am a highly experienced embedded systems engineer, focusing mainly on firmware development. However, my background in electronics also means that I have designed hardware, such as in-car displays of various sizes and cellular-connected monitoring systems. I have designed location-aware systems that utilize mobile apps connecting to embedded controllers via BLE and WiFi. Those systems also included cloud-based backends/portals for gathering and managing data.
A lot of my experience has been on CAN-connected systems. To that extent, I have experience with J1939, extensions such as ISOBUS, and custom protocols. I have also worked with USB (including device drivers), I2C, SPI, DRAM, high-speed serial, and multi-core systems (ARM, PPC). OS experience is FreeRTOS, bare metal, and embedded Linux (including custom driver development, using buildroot and Yocto for kernel/system image management).
I enjoy using cross-platform tools such as Xamarin on the mobile side, but I strongly believe in the merits of native solutions as the ultimate solution. My experience (nearly 15 years) provides me with the toolkit to choose the most suitable tooling for approaching a given system). While C and C++ are my most widely used embedded languages, I have lately been integrating and using Rust in many contexts (including embedded systems).
I founded a consulting company focused on embedded systems and mobile apps/in-vehicle user interfaces. Projects developed include a so...
I founded a consulting company focused on embedded systems and mobile apps/in-vehicle user interfaces. Projects developed include a soil sampler control system with cloud connection for results gathering and data management and an operator-facing data management system. I specialize in hard and soft real-time systems using bare metal, embedded Linux, or RTOS depending on the system at hand.