AlertAvert AlertAvert.com

Cloud Native Engineering

Distributed systems, built to scale.

We design and build high-scale, cloud native enterprise systems using modern distributed-systems techniques — event-driven architectures, serverless compute, and policy-based security.

Kubernetes Serverless Framework

A self-contained, API-driven system for executing independent snippets of code (Capsules) activated by a set of pre-determined Triggers, upon the occurrence of Events.

The architecture is event-based: microservices don't communicate directly via synchronous APIs, but instead publish Events to a stream, as well as consuming them. It runs on a Kubernetes cluster, which manages all compute, storage, and network resources.

A permission mechanism gives tight control over security access, so that only authorized actors can install Capsules, define Triggers, and generate Events.

See it on BitBucket »

Go StateMachine

A lightweight, gRPC-based Finite State Machine server, written in Go. Business entities — orders, users, devices, or anything else with a lifecycle — are modeled as FSMs, driven by configuration-defined states and transitions, and advanced asynchronously as events arrive.

The design optimizes for simplicity and efficiency: a single fsm-server instance, backed by a modest Redis cluster, is expected to track millions of state machines and process several thousand events per second.

Configurations are immutable and versioned — the states and transitions an FSM can traverse are fixed once published, so an in-place change can never leave a running FSM in an undefined state.

See it on GitHub »

Open Policy Agent Integration

A Java library for transparent integration with JSON Web Tokens (JWT) authentication and authorization via an Open Policy Agent server, with a blueprint for injecting OPA authorization into a Spring Security Reactive (WebFlux) application.

It aims to simplify an application's ability to:

By keeping authorization logic (in Rego policies) separate from business logic (in the application's REST controllers), this library makes it easier to achieve a clean separation of concerns.

See it on GitHub »

C++ Distributed Systems Libraries

A collection of advanced C++ building blocks for implementing distributed systems — mostly meant for learning advanced algorithms and modern C++ (up to C++17) features. They include:

To complement these, we've also built a C++ REST API framework and a command-line Argument Parser.

See it on GitHub »