Consulting & Services

Book a free 15-minute discovery call

I’m Denis, an independent software consultant specializing in two areas where deep expertise is scarce and demand is growing: Nix-based infrastructure and Rust integration for mobile platforms.

With 7+ years on NixOS, production experience shipping Rust shared libraries to iOS and Android, and a polyglot background spanning Swift, Objective-C, Go, F#, C#, Python and more, I help teams solve problems that sit at the intersection of systems programming, DevOps, and mobile development.

If you’re evaluating Nix for your organization, or need help with FFI setup for mobile apps or production backends, read on.


NixOS & Nix Consulting

The Problem

Your team wastes hours on “works on my machine” issues. Docker gets you part of the way, but CI pipelines are fragile, onboarding new developers takes days, and you can’t reliably reproduce builds from six months ago. Dependency management across multiple languages and platforms is a nightmare.

What I Offer

Migration & adoption

  • Migrate existing projects from Docker, Ansible, or ad-hoc scripts to Nix-based builds and environments
  • Design Nix flake architecture for monorepos and multi-language projects
  • Set up easy to reuse, update and maintain Nix based configs for servers
  • Set up reproducible CI/CD pipelines with Nix (GitHub Actions, GitLab CI, custom runners)

Infrastructure & configuration

  • NixOS server provisioning and configuration management
  • Write and audit flake.nix, NixOS modules, and overlay configurations
  • Set up binary caches (Cachix or self-hosted) for fast builds across your team
  • Nix-based development environments (devShells) that work identically on macOS and Linux

Ongoing support

  • Nix configuration reviews and audits
  • Troubleshooting broken builds and dependency issues
  • Training sessions for your team on Nix fundamentals and best practices
  • Upgrading and maintaining Nix infrastructure as nixpkgs evolves

Why Work With Me on Nix

The pool of experienced Nix consultants is small. Most Nix experts work in-house at companies like Determinate Systems or Tweag and don’t consult independently.

What sets me apart: I’m not a pure DevOps engineer. I write application code in Rust, Go, F#, Swift, Python and more — which means I can configure Nix builds for non-trivial, polyglot stacks where standard DevOps engineers get stuck. Cross-compiling a Rust shared library that targets iOS ARM64, building an F# project through .NET SDK in Nix, packaging a Go service with CGO dependencies — these are problems I’ve solved firsthand.

My NixOS homelab has been running continuously since January 2021. I use Nix flakes daily for everything from personal projects to production infrastructure.

Who This Is For

  • Startups and SMBs adopting Nix for the first time and needing a guide
  • Teams in functional programming ecosystems (Haskell, Scala, Rust, F#) where Nix is a natural fit
  • Companies suffering from CI/CD fragility who want reproducible, cacheable builds
  • Organizations migrating from Docker/Ansible to a declarative, reproducible approach

Rust for Mobile Apps (iOS & Android)

The Problem

Your mobile app duplicates critical business logic in both Swift and Kotlin. It’s expensive, error-prone, and the two implementations drift apart over time. You need a single, high-performance core — but cross-platform frameworks like React Native or Flutter don’t give you the control or performance you need for things like cryptography, data processing, or custom protocols.

What I Offer

Shared Rust libraries for mobile

  • Design and implement Rust libraries that compile to iOS (.xcframework) and Android (.so / .aar) targets
  • Set up cross-compilation toolchains with Cargo and Nix for reproducible mobile builds
  • Integrate Rust code into existing Swift/Kotlin projects with minimal disruption

FFI bridge engineering

  • Build FFI bridges between Rust and Swift (C-based FFI, Swift bridging headers)
  • Build FFI bridges between Rust and Kotlin (JNI, or via UniFFI for automated bindings)
  • Objective-C++ glue layers for integrating Rust with legacy iOS codebases
  • Design clean, safe API boundaries that don’t leak memory or crash at runtime

Performance-critical module migration

  • Move cryptography, parsing, serialization, ML inference, or protocol implementations from Swift/Kotlin into Rust
  • Audit and optimize existing FFI layers for performance and correctness
  • Memory safety reviews for cross-language boundaries

Why Work With Me on Rust + Mobile

People who deeply understand both iOS native development (Objective-C, Objective-C++, Swift) and Rust and have built real FFI bridges between them are exceptionally rare. This is my actual working experience, not theoretical knowledge.

I’ve shipped Rust shared libraries to iOS and Android in production. I’ve written Objective-C++ glue code bridging C++ libraries (WebRTC) into iOS apps. I’ve built cross-language FFI systems in F# targeting mobile platforms. I understand the full stack from cargo build --target aarch64-apple-ios down to debugging linker errors in Xcode.

I also wrote an F# Advent Calendar article on FFI and have practical experience with Rust on the Swisstronik blockchain project, building SGX-secured EVM components.

Who This Is For

  • Mobile product teams who want one Rust core instead of duplicating logic across Swift and Kotlin
  • Fintech, healthtech, and security-focused companies that need memory-safe, high-performance shared code
  • Teams already using UniFFI who need expert help with complex binding scenarios
  • Companies with legacy Objective-C codebases that want to introduce Rust without a full rewrite

How I Work

Engagement models:

  • Advisory / code review — I review your Nix configs or Rust FFI layer, identify issues, and provide a detailed report with recommendations
  • Hands-on implementation — I write the code, set up the infrastructure, and ship working solutions
  • Training & workshops — I bring your team up to speed on Nix or Rust-for-mobile through hands-on sessions

Typical process:

  1. Discovery call (free, 15 min) — we discuss your situation and I tell you honestly whether I can help
  2. Scoping — I provide a clear proposal with deliverables, timeline, and cost
  3. Execution — I work in short iterations, shipping incrementally and communicating progress
  4. Handoff — documentation, knowledge transfer, and optional ongoing support

I work remotely and am comfortable with async communication across time zones. I’ve worked with teams across Europe and the US.


Get in Touch

The best way to reach me is via Telegram and X/Twitter. You can also find me on GitHub and LinkedIn.

Let’s talk about your project – no commitment, just a conversation to see if I’m the right fit.