Robert Važan

Robert Važan

Software developer with experience too broad to name. I've been programming since I learned how to type. I get paid for doing things right and find refuge in making things fast and smart.


Cloud servers for WBP Online

Cloud blurs boundaries between code and servers. Well-written server setup scripts, now part of the application, improve performance, reliability, security, and developer productivity. I have single-handedly migrated WBP Online from archaic bare metal infrastructure to the cloud.

CRC-32C (Castagnoli)

Hardware-accelerated implementation of CRC-32C (Castagnoli) for C++ and .NET. It's basically a reformatted version of Mark Adler's code. I've nevertheless managed to optimize software fallback by 50%. I've also explored use of PCLMULQDQ instruction in CRC-32C.

ExpressID Cluster for Innovatrics

Innovatrics had a good fingerprint recognition algorithm, but they needed a parallelized server around it. I have developed the original ExpressID cluster for them. It was designed to process a billion records in a split second on thousands of nodes.


FolderNet is designed to be the easiest way to peek into another device without having to sync everything first. With just a tiny drop of assistance from the cloud, FolderNet offers peer-to-peer network filesystem that is extremely easy to use, yet secure and privacy-preserving.


Simple NTP (SNTP) client written in C#. Some desktops run with clock that is off by several minutes. Embedding this library lets apps use accurate network time instead of the system clock.


Seamless reactive programming API for Java. It is transparent and unobtrusive in contrast to the explicit RxJava streams. At the same time, it is more powerful than the simplistic Quasar dataflow variables.


Library of assorted older .NET Stream classes: DuplexBufferedStream, MultiplexStream, PingStream, QueueStream, DuplexQueueStream, PrefixStream, CancellableStream, and ForceCancelStream.


Small collection of controls for WPF. There are some interesting tricks like LazyControl and ExposeControl. But more importantly the library demonstrates highly productive techniques for authoring WPF controls using Assisticant library.

NLog time sources

In order to correlate log entries from multiple computers, it is important to have accurate timestamps in unified time zone. My patch for NLog enables configuration of time sources with different tradeoffs and even definition of new ones.


NoException is an exception killing library for Java. It takes functional programming approach to exception handling by encouraging fallbacks, offering functional replacements for imperative try-catch, and allowing lambdas to throw checked exceptions.


Modern web framework based on concepts of application streaming and reactive programming. It runs the application on the server in Java against mirror browser. Rendered content is then streamed down to the browser while events are streamed up.

Snappy for Windows

Windows port of Snappy compression algorithm. Snappy C++ code was adapted for Visual Studio. .NET wrapper and a command line tool were added on top. It is an interesting alternative to LZ4 compressor.


Open-source fingerprint recognition engine. Surprisingly popular for such niche project. It has attracted contributors and generated spinoffs. I dumped half of my ideas about fingerprint recognition here. The other half is still haunting me.


Learning chatbot that I have coded years ago. Collected chat logs are processed to define new rules for the chatbot through role reversal.

Timers in Assisticant

Reactive frameworks usually come with poor man's timers that write global reactive variable every second or so. In Assisticant, I implemented powerful reactive time algebra that provides millisecond resolution with minimal overhead and a nice API. I have later used similar algorithms in Hookless.

WBP Online Terminal

Low-latency data streaming service for traders. Every change in the data (even correcting a typo) is visible on screens worldwide within one second. Some data paths are optimized down to millisecond level. First project in the world to use PushMode in production.



Wanted: data mining / statistical modelling


Wanted: LESS/SCSS, interaction design

Build & Deployment

Networking & Storage

Wanted: scalable reactive database (perhaps RethinkDB)


Wanted: continuous profiling, network profiling

Tests & Monitoring

Wanted: headless browser testing, HTML/CSS standards check


Wanted: penetration testing, anti-DoS/DDoS

Application Domains


Wanted: transactional emails

Projects & Business