A realtime analytics platform built as around 15 Node.js microservices designed to run in air-gapped environments.
General System was building a next-generation realtime analytics platform. We came in at senior full stack level in 2022 and stayed into 2023.
The shape was Node.js microservices on Docker and Kubernetes, around 15 of them, with TypeScript across the services and Postgres underneath. Air-gapped operation was part of the design brief, which is an unusual requirement for a platform built that way. The CV does not say who the platform served or what it analysed.
An air gap removes most of what a Node service quietly assumes: a reachable npm registry at install time, an outbound path for telemetry, a managed database endpoint, and someone who can pull a fresh image when a container misbehaves. Everything the platform needs has to be inside the bundle that goes through the door.
Around 15 services multiplies that. Each one needs its image and its dependencies present on site, with configuration that resolves offline, and the observability has to work without anything phoning home. Prometheus and Grafana on the technology list are consistent with that, since both run inside the cluster. The CV does not name the environments those services ran in.
We built the platform on Node.js microservices under Docker and Kubernetes, with the air-gapped case shaping the design. TypeScript ran across the services, Postgres held the data, React with Redux made up the front end, and Jest covered the test layer.
Prometheus and Grafana provided the operational view. Java and React Native also appear on the technology list for the engagement, though the CV does not say where they were used. Delivery ran through Git and GitLab, with JIRA for tracking.
Around 15 Node microservices on Docker and Kubernetes, designed to run in air-gapped environments.
That service count is the figure the CV gives, and it is the only one. There is no throughput number and no named customer for this engagement, so the record here is the architecture and the constraint it was built against.
- Node.js
- Docker
- Kubernetes
- Jest
- TypeScript
- Postgres
- Bash
- React
- Redux
- Java
- React Native
- Prometheus
- Grafana
- Git
- GitLab
- JIRA
Working on something similar?