Systems engineeringEst. 2015

Senior systems engineers. Firmware to cloud.

We design and build backend platforms, payment systems and infrastructure for companies that need them to work at scale.

  • 2015Founded by three systems engineers
  • 45+Years of combined production experience
  • 15+Years of experience for each engineer
  • 1Of the three founders runs every project

01About

Three engineers. One of us runs every project.

One of the three of us runs every project, and we write the code ourselves.

Eval Geniuses was founded in 2015 by three systems engineers. Between us we have more than 45 years of experience building production systems, leading engineering teams and working directly with clients.

Our work includes an energy data platform that takes readings every minute from more than 10,000 meters, a lay-by payments platform that settles merchants to the cent, and Kubernetes work on clusters running inside banks.

Some clients hire us to build a product from scratch. Others bring us in to work alongside their own engineers.

02What we do

The layers most teams would rather not own.

Architecture, infrastructure, data, payments and the code underneath it all. We work across the stack because the hard problems rarely stay in one layer.

  • 01

    Systems architecture

    We plan systems around the load, data and failure cases they will actually face: data pipelines, message-based backends, payment and settlement engines. We write down the decisions so your team knows why things are built the way they are.

  • 02

    Kubernetes and infrastructure

    We build bare-metal clusters, managed clusters on GCP, Azure and AWS, and GPU nodes for inference. We've also worked on clusters inside bank data centres. We automate them with Ansible, ArgoCD and Tekton.

  • 03

    High-volume data

    We build ingestion, queuing and reporting for millions of events a day using RabbitMQ, MongoDB and streaming pipelines, with live dashboards for end users.

  • 04

    Payments and reconciliation

    We build payment flows, reconciliation and merchant settlement. Every balance can be traced back to the transactions behind it.

  • 05

    Low-level systems

    We write firmware, custom IPC protocols and systems software. Most of our low-level work is in Go, Rust and C. Product work is usually TypeScript and Node.js.

  • 06

    CI/CD and DevOps

    We set up build and deployment pipelines that run inside your cluster, then hand them over for your team to run.

03How we work

Advice we'd give if it were our money.

You deal with the engineers who design and write your system, from the first conversation to the handover.

  1. 01

    Your interests come first

    We tell you what we would do if it were our money. Sometimes that means a simpler design, a cheaper setup, or not building a feature at all.

  2. 02

    Security from day one

    Security and data integrity are requirements from the start of a project. We don't leave them for the week before launch.

  3. 03

    You work with senior engineers

    You deal directly with the people designing and writing your system, and each of us has more than 15 years of experience.

  4. 04

    Full builds or team support

    We can take a product from first design to production, or join your team to help with a specific problem.

  5. 05

    A clean handover

    When we finish, you get documentation, automated infrastructure and code your own engineers can maintain.

04Now

What we're working on now.

In progress

WatchIt

WatchIt is a community reporting app. People use it to report infrastructure problems and local events in their area, and the reports are passed on to the municipality. Privacy is built into the architecture: the system is designed so that a report cannot be traced back to the person who made it.

The backend is written in Go and runs serverless on AWS.

  • Go
  • AWS
  • Serverless
In progress · Under NDA

Small-model inference and training

We're building custom training and inference pipelines for small models that run on laptop-class hardware. The client work is under NDA, so we'll share more when we can.

  • Training pipelines
  • Inference
  • Laptop-class hardware
In progress · Open source

BigInt for Zig

We're adding arbitrary-precision integer support to the Zig programming language: the kind of low-level, correctness-first work we do between client projects.

  • Zig
  • Compiler
  • Open source

05Selected work

The larger projects we can talk about.

A selection of the larger projects we can talk about. LayUp, The Food Collective and Insted are still clients today.

Energy Partners

Meter data platform

Stack

  • GCP
  • RabbitMQ
  • Node.js
  • MongoDB

Energy Partners' clients wanted to see how their electricity systems were performing: how much power they used, how much their solar panels produced, how much they saved, and how much they earned selling power back to the grid. The data came from more than 10,000 meters, supplied by different metering companies across South Africa, each sending a reading every minute.

We designed and built the ingestion platform on Google Cloud. RabbitMQ takes in the readings, Node.js services process and aggregate them, and MongoDB stores the results for reporting.

Even at its lowest volume the platform was ingesting more than a million data points a day, and load grew steadily as meters were added. Clients get live dashboards showing their usage, generation, savings and grid income.

LayUp Ongoing client

Lay-by payments and settlement

Stack

  • AWS Lambda
  • TypeScript
  • Node.js
  • MongoDB

LayUp lets shoppers pay off purchases in instalments on an interest-free lay-by plan. Payments come in from many customers over weeks or months, and each one has to end up with the right merchant.

We designed and built the platform on AWS Lambda using TypeScript, Node.js and MongoDB. Its main component is a reconciliation and settlement engine that pays merchants on a fixed schedule.

Every cent in the system can be traced from the customer who paid it to the merchant who received it.

Adhara

Embedded Kubernetes engineers

Stack

  • Kubernetes
  • On-premise bank infrastructure

Adhara builds blockchain-based liquidity management and international payment systems for banks. Their software runs inside each bank's own infrastructure, under that bank's security and change-control rules.

We joined Adhara's Kubernetes team and worked as part of it day to day. We helped deploy and maintain the custom clusters that run Adhara's platform inside bank environments, and took on whatever work the team needed done.

It's a good example of how we work when we're not leading a build: we fit into an existing team and pick up the work quickly.

Black Box Intelligence

Infrastructure rebuild

Stack

  • Azure
  • Kubernetes
  • GPU nodes
  • ArgoCD
  • Tekton

Black Box Intelligence provides data and benchmarking to the restaurant industry, with engineering teams in South Africa, the US and Europe. Their deployments ran through Terraform. At most one release went out per day, at the end of the day, and only their lead engineer could run it. Releases needed downtime windows and failed often enough to cause long outages, and keeping Terraform versions current and conflict-free was a job in itself.

We rebuilt their Kubernetes setup on Azure, including GPU nodes for model inference. Builds, test suites and deployments now run inside the cluster through ArgoCD and Tekton, and code only ships once its tests pass. We also helped the team move from sprint-based Scrum to Kanban, which suits engineers working across three regions and time zones.

Deploying is now a matter of tagging a release. Code goes out as soon as it's ready, many times a day, with no downtime window and no waiting for one person to run it. Engineers trust the pipeline to catch problems before production.

The Food Collective Ongoing client

Hiring platform and business search

Stack

  • TypeScript
  • MongoDB
  • AWS ECS
  • Vue.js

The food industry had no clear picture of itself. There was no easy way to see which businesses exist, where they are and what they do. Hiring was just as fragmented: recruiters often missed the mark, candidates struggled to find work, and businesses struggled to find staff.

We designed and built a searchable database of food businesses and a hiring platform alongside it. Anyone can look up businesses by location and what they do, employers post jobs and find staff, and candidates find work directly.

Insted Ongoing client

Pay now, collect later

Stack

  • Go
  • MongoDB
  • AWS Lambda
  • Vue.js

Queues at events are slow twice over: first you wait to order, then you wait for the order. Insted set out to remove both with a low-cost payment method.

We designed and built a system where customers order and pay ahead, then walk up to a collection point when their order is ready. Payment, order status and collection happen at different times, so the system keeps all three in sync.

Sources for client descriptions: Adhara (Crunchbase), Black Box Intelligence (about).

06Other work

Work we can describe but not attribute.

The projects above are a small part of what we've done. Many of our clients are covered by NDAs, and many projects were smaller, one-off jobs: custom websites, configured platforms and standalone services.

  • Bare-metal Kubernetes in a data centre: four clusters of 12 nodes each, with no cloud provider involved.
  • Firmware for devices with tight memory and timing limits.
  • Custom IPC protocols for communication between processes and devices.
  • Ansible automation for configuring and deploying large server fleets.

07Questions

Questions we get asked.

Short answers, drawn from the work above. Anything else, ask us directly.

What does Eval Geniuses do?

We design and build backend platforms, payment systems and infrastructure for companies that need them to work at scale. Eval Geniuses was founded in 2015 by three systems engineers with more than 45 years of combined experience building production systems.

Do you build from scratch, or can you join an existing engineering team?

Both. Some clients hire us to take a product from first design to production. Others bring us in to work alongside their own engineers on a specific problem, as we did on Adhara's Kubernetes team.

Who actually does the work?

One of the three founders runs every project, and we write the code ourselves. You deal directly with the people designing and writing your system, and each of us has more than 15 years of experience.

Which technologies do you work in?

Low-level work is mostly Go, Rust and C. Product work is usually TypeScript and Node.js. We run Kubernetes on bare metal and on GCP, Azure and AWS, use RabbitMQ and MongoDB for high-volume data, and automate with Ansible, ArgoCD and Tekton.

Can you build a payment or reconciliation system?

Yes. We build payment flows, reconciliation and merchant settlement. For LayUp we built a lay-by platform whose settlement engine pays merchants on a fixed schedule, and every cent can be traced from the customer who paid it to the merchant who received it.

Do you work inside regulated environments such as banks?

Yes. We have deployed and maintained Kubernetes clusters running inside bank data centres under the bank's own security and change-control rules, and we have built bare-metal clusters with no cloud provider involved.

What do we get when the project ends?

Documentation, automated infrastructure and code your own engineers can maintain. Build and deployment pipelines run inside your cluster and are handed over for your team to run.

How do we start?

Get in touch and tell us what you're building or what isn't working. You'll talk to one of the engineers who would do the work.

Working on something difficult?

Tell us what you're building or what isn't working. You'll talk to one of the engineers who would do the work.

Get in touch