About the service
I build WebAssembly modules that bring near-native speed to the browser so heavy computations that used to crawl on vanilla JavaScript finally run fast right for your users. My main work is porting existing code from C, C++ and Rust to WASM: I pick the right toolchain, memory model and optimization flags, then wrap it all in a clear JavaScript API that your frontend team calls without diving into low-level details. If you already have a native library doing real work, I'll port it to the web without complete rewriting; if the project starts from scratch — I'll write the computational core in Rust for safety and speed.
WebAssembly pays off most on everything that hits computation limits: image and video processing, audio pipelines, operations on large arrays and matrices, parsers, compression and decompression, cryptography, physics and simulations or processing large datasets right in the tab. I consider the boundary between JS and WASM as important as the core itself: a fast module tied to a slow bridge is still slow. So I minimize copying across this boundary, deliberately use shared memory and typed arrays, and offload long tasks to Web Workers to keep the interface responsive. Where appropriate for the target platform, I use SIMD and threads to squeeze out more.
You get a documented versioned module with a typed interface, a small demo proving the numbers and benchmarks compared to the JavaScript implementation it replaces. I test across major browsers, watch for honest bundle size and deliver sources with a build script so the team can rebuild the module anytime. If you already have a WASM module that's being difficult or slow, I'll take it on for audit and optimization of ready builds.
— Port C, C++ and Rust to WebAssembly
— Fast modules for images, video and data
— Integration with JS, Workers, SIMD and threads
— Benchmarks, documentation and reproducible build
WebAssembly pays off most on everything that hits computation limits: image and video processing, audio pipelines, operations on large arrays and matrices, parsers, compression and decompression, cryptography, physics and simulations or processing large datasets right in the tab. I consider the boundary between JS and WASM as important as the core itself: a fast module tied to a slow bridge is still slow. So I minimize copying across this boundary, deliberately use shared memory and typed arrays, and offload long tasks to Web Workers to keep the interface responsive. Where appropriate for the target platform, I use SIMD and threads to squeeze out more.
You get a documented versioned module with a typed interface, a small demo proving the numbers and benchmarks compared to the JavaScript implementation it replaces. I test across major browsers, watch for honest bundle size and deliver sources with a build script so the team can rebuild the module anytime. If you already have a WASM module that's being difficult or slow, I'll take it on for audit and optimization of ready builds.
— Port C, C++ and Rust to WebAssembly
— Fast modules for images, video and data
— Integration with JS, Workers, SIMD and threads
— Benchmarks, documentation and reproducible build