Vulkan engines, compilers, and everythingbelow the framework.
I'm Benjamin Rosseaux — BeRo in the demoscene. I build renderers,
game engines, physics engines, JIT compilers, emulators, script engines, operating systems, network stacks and LLM inference from scratch.
My sampler engine ships inside FL Studio, my Vulkan engine runs
commercial games, and my rewrite of the 1541 drive emulation is part of VICE.
Remote from Germany · English & German · Short engagements welcome
1,462
GitHub stars
24
Public projects
22
Years of public releases
65
Demoscene productions
What you can hire me for
Six ways to put me to work
Fixed scope or ongoing, remote, in English or German. If it is low-level,
performance-critical, or nobody else wants to touch it — that is my part of the stack.
Code review, debugging & rescue work
The fastest way to work with me. Send a repository, a crash nobody can reproduce,
a performance regression, or a codebase you inherited and do not trust. I read code
for a living and I find things: memory corruption, race conditions, undefined
behaviour, the pointer that happened to work for three years. You get written
findings and a fix path — fixed scope, no long-term commitment.
Vulkan renderers, GPU pipelines, shading and lighting, culling and draw submission,
frame-time optimisation, asset pipelines. I have written two engines from nothing — an
OpenGL one that shipped a released game, and the Vulkan one that commercial titles run on —
so I know where real projects lose their milliseconds.
VulkanGLSL / SPIR-VPBRglTFProfiling
Public proof: PasVulkan · Kraft · Supraleiter · two published talks on rendering
Low-level & systems engineering
Compilers, virtual machines, emulators, parsers, protocol implementations, lock-free
concurrency, SIMD optimisation — and, more recently, LLM inference written from the
matrix multiply upwards. I have written an operating system from the boot sector up,
scheduler and SMP included, and rewritten the 1541 drive emulation in VICE down to the
level of individual magnetic flux transitions. There is not much below this that I have
not had my hands in.
Large legacy Delphi codebases, Free Pascal migration, cross-compiler compatibility,
and libraries that must behave identically on every target. It is a small world,
and a good part of its open-source infrastructure has my name on it.
DelphiFree PascalLegacy migrationCross-platform
Public proof: 20+ published Pascal libraries · CrossPascal · BESEN
Cross-platform desktop applications
Applications that are genuinely native on each system, rather than one toolkit painted
everywhere. I keep a digital audio workstation running on Windows, macOS and Linux — Win32,
Cocoa, GTK and Qt widget layers, GPU canvases on OpenGL, Direct2D and Metal, and audio through
ASIO, WASAPI, CoreAudio, ALSA, PipeWire and JACK, every backend written by hand. I know which
cross-platform abstractions hold and which leak, because I have had to replace the leaking ones.
Public proof: Klangknecht · BeRoTracker · micro64 · PasVulkan
Audio & DSP
Software synthesis, audio engines, DSP algorithms, mastering chains and real-time audio
paths. I have written a SoundFont engine good enough to be licensed into FL Studio, a full
DAW, a tracker that hosts VST and CLAP plugins, a browser-based mastering tool, a speech
synthesis engine, and synthesizers small enough to fit inside a 64k intro.
SynthesisDSPReal-time audioSequencing
Public proof: Sobanth (in FL Studio) · BeRoTracker · Klangknecht · Masterknecht · four released singles
Selected work
Twenty years of building things from scratch
No screenshots of things you cannot check. Almost every project below is public — open source,
a released product, or a demoscene production with a date on it. Click through and look.
Commercial work
Code of mine that ships in other people's products
FL Studio — SoundFont player
My SoundFont 2 synthesis engine, Sobanth, powers the SoundFont Player that FL Studio
has shipped since version 20.9 in 2022. Somebody else's flagship product, running my
synthesis code, in front of a very large number of musicians.
Games on my own Vulkan engine
For the past few years my work has gone into commercial games built entirely on
PasVulkan, together with a small team. The first is heading to release, and a full case
study will appear here once it is announced.
About
Where the abstractions run out
I write code at the level where the abstractions stop helping. Not out of nostalgia —
that is simply where the interesting problems live: the garbage collector, the
register allocator, the memory barrier, the last two milliseconds of the frame.
Much of how I work comes from the demoscene. I am BeRo in Farbrausch, a group known
for fitting entire audiovisual productions into 64 kilobytes. No engine, no
libraries, every byte accounted for — it turned out to be very good training for
everything that came afterwards.
I released my first JIT-compiling scripting language in 2004 and my first tracker the
same year. Since then: an ECMAScript engine with a JIT, a C compiler with its own linker,
a 3D physics engine, a Vulkan renderer, a half-cycle-exact C64 emulator, a RISC-V emulator
that boots Linux, an operating system with its own boot loader and SMP scheduler, and an
LLM inference engine. Along the way I rewrote the 1541 floppy emulation in VICE — the
reference Commodore emulator — to be exact down to the magnetic flux transitions, and
designed the P64 image format that stores them.
I work remotely from Germany, in English or German. I document what I find, I say
when something is harder than hoped rather than discovering it with you at the
deadline, and I am comfortable being handed a codebase with no documentation and
asked what is wrong with it.