hello đź‘‹

I’m Jef Van den broeck, expert full-stack/IoT software engineer and software/hardware/prototype builder, looking for interesting projects, willing to consider employment.

summary

I specialize in the technical; network and systems code for large and small machines. I integrate this with a strong grasp of adjacent fields, such as front end UX and electronics.

This translates naturally to full-stack and/or IoT projects, where I have extensive knowledge on all fronts; friendly modern front ends, embedded code for devices along with electronics and networking, and asynchronous back ends to tie it all together.

This is not limited to software, I also build physical products, combining electronics, 3D printing and mechanics.

Because of this multi-disciplinary skillset, I can provide a high value-over-time ratio, and am often asked to build prototypes and MVPs.

native stack

Through the years, this became my go-to development environment.

internet applications

hardware prototyping

professional

2015-present codewerken

I work self-employed as codewerken, here are some highlighted projects.

a geolocation app back end

For a startup in stealth-mode building a geolocation-intensive app; a full-featured back end which should make it far into production.

Written in Python, this back end:

  • has a detailed REST API for app clients (flask, flask-restful)
  • has a websocket API for live chat functionality between clients (gevent pubsubbed via Redis)
  • runs a variety of async workers for pushing to external systems such as notification/SMS services (Celery)
  • keeps track and performs lookups based on geographical data (PostgreSQL with PostGIS)
  • keeps detailed system behaviour metrics (Prometheus and Grafana)

Citizen Dialog Kitinfo, src

A project by the Research[x]Design group of KULeuven, e-ink displays placed in public spaces which invite public feedback via buttons, all synced to the cloud over 3G. They wrote the front end, I did the device and the back end.

The device is a Particle Electron bundled with a Waveshare e-ink display, for which I ported the driver to the Particle stack, as well as wrote all the application code and electronics (C, particle.io).

The back end was written in node.js, having both an HTTP REST API for the front end and a custom TCP/IP interface for the displays. Conventional image codecs out-memoried the Electrons, so a simple RLE compression scheme was built.

environmental noise monitoring

A party which already had an environmental sensor stack needed a component for noise monitoring and a cloud component to store/display all the generated data.

For the audio sensor, a COTS microphone was selected and then compared to a reference microphone against a controlled noise source to derive calibration values. Then code was written (Python, numpy and scipy) for a Raspberry Pi to continuously sample the microphone and derive dBA noise levels. This was installed on a list of sensor sites.

The back end (Python, flask) ingested all of this data and stored it in InfluxDB, whilst keeping management records in MySQL. This all was brought out by a custom front end which displayed the normalized timeseries data in both graphs and heat maps (Bootstrap, jQuery, leaflet.js, Chart.js).

industrial machine (ongoing)

For another startup in stealth-mode, the prototyping of a novel industrial machine. An idea was provided and turned into a working mechanical device, in a close feed-back loop with the client.

The machine itself is comprised of a large number of custom designed parts (OpenSCAD, PLA FDM) and off-the-shell support hardware.

The control and telemetry is done on an ESP32 (Arduino, IGMP, FreeRTOS multithreading). Additional electronics are added for sensor data normalization and driving inductive loads.

Option Wireless, 2009-2015, Senior Software Engineer

The first years at Option were spent working on the Viu2info, a 3G-connected IP camera which streamed audio/video to Android/iPhone apps.

For the device, a Freescale i.MX27 Linux board outputting AAC/H264, wrote most of the application-relevant code:

On the server side, wrote:

The CloudGate product line of 4G IoT routers is Option’s flagship product. All of these check in with an Option service for configuration/firmware updates; the provisioning server, part of “CloudGate Universe”.

Built the provisioning server (Python, mod_python) as well as supporting infrastructure, such as a dedicated PKI CA (openssl) and build/deploy infra for the entire CloudGate Universe. Every component is bundled as a .deb file and placed on a private apt repository, triggered by a Jenkins CD pipeline. Running systems can update from this repo, and daily fresh VMWare images are generated against this repo for testing purposes.

Numerous other projects interlaced this timespan, including embedded work (C). My code runs on many, many, thousands of devices.

iNEWiT, 2003-2009, R&D Engineer

iNEWiT was a startup producing the Viu, a 3G-connected IP camera which streamed audio/video to (pre-iPhone) handsets.

For our device, a 400Mhz MIPS board running Linux streaming out AMR-NB/H263 via RTP/RTSP, wrote most of the media processing and streaming software, often heavily multi-threaded (C, pthreads, sockets async with select()), as well as a lot of the support infrastructure (C, bash).

On the cloud, wrote the stream processing and distribution component which ingested streams from the device (RTP) and relayed these to connected users via a self-written RTSP server (C, sockets async with select()).

personal

Selected relevant personal projects.

Fri3d Campinfo

Fri3d Camp is a two-yearly family camp for hackers, makers and DIY-interested people. In 2024 we had our fifth edition with around 640 visitors, and we’re hoping to match that in our sixth edition in 2026.

We organize this with a team of ~20 people, in which I pull the cart for the ticketshop and the on-site infodesk.

these.codessrc

these.codes is a platform allowing the public to interact with your objects via QR codes. Throw a sticker on something, scan it once to tell the platform what and where it is, and anyone scanning afterwards will see all the actions they can do with this thing.

Written to automate the camp, but now discovering uses everywhere.

batsyvideo

An open-ended personal development project which aims to show the position of nearby bats by measuring the time difference of arrival of their calls on a set of microphones.

Recently the analog front end got finished; amplifying the microphones, mixing it down to audible range and finally filtering it, all transistor-based and simulated with LTSpice.

sawtooth surfers

The Sawtooth Surfers are a bunch of friends meeting up every fortnight in the local pub’s meeting room to build, from scratch, a modular synthesizer (over pizza and beers). So far it’s been lots of fun and a great exploration in analog synthesis. Currently covid-blocked.

an LED campfiresrc,video

A tiny artistic project which somehow has made a lot of people happy.

minutiae

Credits: the font used is Iosevka Aileinfo, styling after normalize.cssinfo and hosted on Gitlab Pagesinfo.