Boris Brodski · Systems · since 1999

Systems & C/C++

From an operating-system kernel written at 19 to a JNI library compiled for six platform/architecture combinations and used worldwide — C and C++ where it has to be correct, portable and fast.

Get in touch

7-Zip-JBinding

The flagship: a JNI-conformant C++ library around the 7-Zip algorithms with an archive-format-independent Java API, password-protected and multi-part archives, built for Windows, Linux and macOS in 32 and 64 bit plus ARM, with a test suite that runs on every target. Founded in 2007, maintained since, around ten thousand downloads a month on Maven Central. Heavy C++ metaprogramming inside; a simple API outside.

Bridges and ports

A Python ↔ C++ bridge for a CAD manufacturer across several interpreter versions and architectures; a Qt application moved from Windows to Linux with a new CMake build; the C ↔ script bridge and bytecode VM of IDScript; a stdio-like encryption layer in C.

Where it started

A Unix-like real-time kernel in 386 assembler and Watcom C in 1999 — boot, protected-mode memory management, scheduler, drivers — written to find out what an operating system is.

What I do for clients

Relevant work

Skills in this direction

2000 2005 2010 2015 2020 2025 x86 assembler x86 assembler: 1997–2000 Reverse engineering (x86, OllyDbg) Reverse engineering: x86 disassembly, OllyDbg, assembler-level debugging: 1997–2009 Security-conscious design Security-conscious design: 1998–now C / C++ C / C++: 1999–now GCC / CMake / Autoconf / Make GCC / CMake / Autoconf / Make: 1999–now Cryptography, Crypto++ Cryptography: ciphers (AES, RSA, DES), Crypto++: 2001–2009 Interpreter & bytecode VM design Interpreter & bytecode VM design: 2002–2007 Windows API / OLE Windows API / OLE: 2003–2007 Linux / bash Linux (Debian/Ubuntu): 2004–now C++ metaprogramming C++ metaprogramming: 2007–now JNI JNI: 2007–now Cross-platform builds Cross-platform builds (Linux: 2009–now systemd systemd: 2020–now Qt Qt: 2021–2021

Security

  • ★★★★★ Security-conscious design 1998–
  • ★★★★★ Cryptography: ciphers (AES, RSA, DES), Crypto++ 2001–2009
  • ★★★★☆ Reverse engineering: x86 disassembly, OllyDbg, assembler-level debugging 1997–2009

Languages & DSLs

  • ★★★★★ Interpreter & bytecode VM design 2002–2007

Infrastructure

  • ★★★★★ Linux (Debian/Ubuntu) 2004–
  • ★★★★☆ systemd 2020–

Systems & embedded

  • ★★★★★ C / C++ 1999–
  • ★★★★★ C++ metaprogramming 2007–
  • ★★★★★ JNI 2007–
  • ★★★★★ GCC / CMake / Autoconf / Make 1999–
  • ★★★★☆ Cross-platform builds (Linux 2009–
  • ★★★★☆ Windows API / OLE 2003–2007
  • ★★★☆☆ Qt 2021–2021
  • ★★★★★ x86 assembler 1997–2000