Platform engineer Lagos · UTC+1

Segunmaru
Faozan.

I build the ground other engineers stand on: Kubernetes, pipelines and the metal underneath.

100+
services moved to Kubernetes
100+
CI/CD pipelines maintained
5+
deployments a day
60%+
faster pipeline execution
Available
Remote or relocation
01 — Migration
SystemSpecs (Remita) · DevOps Engineer · 2024 – present

A hundred services, off Swarm and onto Kubernetes.

I migrated 100+ services from Docker Swarm to Kubernetes.

02 — Bare metal
SystemSpecs (Remita)

Clusters raised on bare metal, from the ground up.

Provisioned with Kubespray. Networked with Calico and Cilium.

03 — Delivery
SystemSpecs (Remita) · GitLab CI/CD

A hundred pipelines. Five deploys a day.

I maintain 100+ GitLab CI/CD pipelines that ship 5+ deployments every day.

04 — Freelance
AccessEMR · DevOps · 2024 – present

Same discipline, different stack.

Jenkins CI/CD for .NET and Angular, and the AWS underneath: RDS, S3, IAM and bastion hosts.

05 — DevOptic
Designed and built by me · used daily at work · in active development

DevOptic

One place to follow a failure from the request that broke to the hop that broke it.

Engineers juggle separate tools for metrics, logs, traces, containers, Kubernetes, API tests and incidents. Every switch costs context, and every tool pages on its own. DevOptic unifies them and correlates related failures into one actionable incident.

devoptic mock data
OBSERVE · FUNCTIONALITIES / CHECKOUT
Checkout CRITICAL Orders team
Live traffic
Failing 31% of orders never complete
Synthetic
99.1% target 99.0%
Path taken by real traffic
edge-gateway
38.2k req
0.1% err · p95 ≈ 840ms
order-service
38.2k req
0.2% err · p95 ≈ 610ms
payment-service
31% err · 11,842 × 401
p95 ≈ 220ms
card-network
37.9k calls
vendor · p95 ≈ 5.4s
Business outcomes · last 5 min
Success 26,358
No response 11,842
Declined 412
Failing request · trace 9c41e2a0 1 of 11,842 · ORD-55102
edge-gateway POST /v1/orders 221ms 200
order-service POST /internal/charge 198ms 200
risk-check POST /score 31ms 200
settlement-api POST /authorize 84ms 401
app.response_code = 91 · issuer unavailable · token expired 4 min ago
Callback No callback for ORD-55102 · expected within 5 min
Logs for this span Whole transaction Other 11,841 failures
Blamed hop
settlement-api:/authorize
Container
billing · node-03
Service
settlement-api · prod
What changed
14:12
settlement-api deployed
v2026.10.2 · 6 min before
14:18
401 rate crossed threshold
14:21
Checkout went Failing
14:24
3 downstream alerts adopted
shown as consequences
Logs trace_id = 9c41e2a0
14:22:07.881 order-processor INFO charge initiated ref=ORD-55102
14:22:07.902 risk-check INFO score=0.02 decision=ALLOW
14:22:07.918 settlement-api WARN token refresh failed, using cached credential
14:22:07.961 settlement-api ERROR auth rejected status=401 code=91
14:22:07.964 order-processor WARN downstream 401, marking pending
CRITICAL · OPEN · OPENED 18M AGO
#4127 · settlement-api returning 401 to order-processor
1 incident 39 consequences · 1 page sent, not 40
Consequences · visible, not deleted
order-processor error rate above threshold calls settlement-api
edge-gateway latency above target upstream
event-dispatcher queue depth rising downstream
invoice-service error rate above threshold downstream · 2 hops
+ 35 more
Stability monitoring flapping recurring stabilizing recovered
Run Check · condition still true · resolve blocked
01 / 04

Start from what the customer felt.

DevOptic measures business flows from live traffic. Checkout is failing: 31% of orders never complete.

02 / 04

Open one failing request.

Every hop, its timing and its status, from the gateway down to the call that returned 401.

03 / 04

Land on the hop that broke.

Blame goes to the deepest failing hop, next to its logs and the deploy that landed six minutes before.

04 / 04

Page once.

Every alert caused by the same failure joins one incident. Resolve stays blocked until a live check passes.

3
Kubernetes clusters watched
6
Docker VMs
200+
endpoints under watch
97.2%
API test pass rate
How it is built
Agent
Go agent
on each host · outbound only
→
Transport
REST · gRPC
agent → backend
→
Backend
Go · Gin
PostgreSQL · Redis
→
Correlation
Event bus
incidents · notifications
→
Telemetry
ClickHouse · MinIO
logs at volume
→
Client
React 19 · TS · Vite
live over WebSockets
What it watches
WATCHED
Linux hosts
agent · metrics
WATCHED
Docker
containers · hosts
WATCHED
Kubernetes
clusters · workloads
WATCHED
APIs
synthetic tests
WATCHED
Databases
health · backups
WATCHED
Redis
latency · memory
WATCHED
CI/CD
pipelines · provenance
Core Superpowers · What DevOptic Solves
01 / CAUSALITY NOISE CONTROL

Incident Correlation & Alert Deduplication

The Industry Problem One database hiccup or network blip cascades across 20 services, triggering 40 noisy duplicate pages that wake up the entire on-call rotation.

DevOptic understands service topologies. It correlates downstream consequences to the deepest failing hop, pages on-call once for the root cause, and suppresses downstream alert noise.

02 / PIVOT VIGIL ENGINE

Trace-to-Log Zero-Context Pivot

The Industry Problem Engineers juggle distributed traces in one tool, copy trace IDs, and spend 20 minutes manually grepping millions of container logs in Kibana or CloudWatch.

DevOptic’s Vigil engine links spans directly to ClickHouse logs. Clicking any failing span immediately loads the container logs, stack trace, and environment context at that exact millisecond.

03 / PROVENANCE CI/CD GIT LINK

Live Deployment Provenance

The Industry Problem During high-severity outages, the first question in Slack is always "did someone deploy something recently?" while teams scramble across GitLab or GitHub.

Every failing service in DevOptic automatically surfaces its deployment provenance: exact Git commit SHA, pipeline number, author, and how many minutes before the incident it landed.

04 / BUSINESS SLOS REAL TRAFFIC

Business Flow Health from Live Traffic

The Industry Problem Host CPU, memory, and disk show green 99% uptime, while 30% of user checkout or transfer transactions are silently failing without alerting engineering.

DevOptic measures actual business journeys directly from live HTTP traffic and synthetic contract probes. When checkout conversion drops, an incident is triggered before users file tickets.

[ 30-MIN LIVE DEMO & TECHNICAL CONSULTATION ]

What we walk through during a live session

Because DevOptic runs against production cluster topologies, there is no public staging sandbox. I walk through live architectures, triage mechanics, and production code 1-on-1.

01 / SIMULATION
Live Incident Triage
Watch a multi-tier cascade failure simulate in real time, see automated root-cause isolation, and inspect how downstream resolve checks stay blocked until verified.
02 / ARCHITECTURE
Agent & Pipeline Internals
Examine the lightweight Go host agent (push-only, zero SSH), ClickHouse time-series ingest architecture, Redis pub/sub state cache, and React WebSocket rendering.
03 / CONVERSATION
Platform Strategy & Roles
Discuss your engineering team's current observability bottlenecks, alert fatigue, bare-metal / Kubernetes scaling roadmaps, or open Senior/Staff Platform roles.
Ready to see DevOptic live?
Pick a convenient 30-minute slot on my calendar below — intro calls are 1-on-1 video consultations.
Case Study · Engineering Decisions Behind DevOptic
01 / COVERAGE KUBERNETES

Watch every cluster, not just the one on screen

The Problem The obvious design ties monitoring to whichever cluster the UI has selected. Every other cluster goes dark, and incidents there are never raised.

The “active cluster” flag now only decides what the UI shows. Bootstrap starts a workload-readiness watcher, a metric watcher and an alert service for every connected cluster, so all of them raise incidents at the same time.

02 / IDENTITY INCIDENTS

Fingerprint failures by service, never by container ID

The Problem Container and pod IDs change on every restart. A crash-looping service looks like a brand-new, unrelated incident each time, so recurrence is never detected.

Fingerprints use stable names: compose service, then container name, service name, then host plus image. Pods use namespace and pod name, and UUID or hex IDs are rejected outright. A relapse within seven days reopens the same recurring issue. After that, a new one opens and links back to the old.

03 / PERFORMANCE EDGE AGENT

Profile first: 19× faster on the hot path

The Problem A live CPU profile of an agent on an 89-container host showed log-policy matching using about 43% of its CPU: a regex backtracker running on every line, for every policy.

The real policies were plain literals and alternations that never needed a regex engine. Those shapes now match with allocation-free substring scans (7,380 → 389 ns/op, ~19×), and anything else falls back to regex. The next profile pointed at the credential-redaction pre-filter, now a single pass (1,147 → 379 ns/op, ~3×). A differential test proves it never misses a secret the old version caught.

04 / VERIFICATION LIVE TESTING

Unit tests passed. The feature silently did nothing.

The Problem Metric-based policies (volume spike, error rate, silence) never fired in edge mode. The unit tests used synthetic container references, so they stayed green.

Testing against a live fleet showed the resolver matched zero containers: it filtered on Docker’s human-readable status (“Up 2 minutes”) instead of its state (“running”). I fixed the filter, validated it end to end on a real host, and added logging so a silent zero-match is visible next time.

Also built
01

SolPayPlus

Decentralised cross-border payments on Solana.

Hackathon winner Solana · Web3
Stack

The whole stack,
from the metal up.

Each layer, the tools I run on it, and where I ran them.

L6 Interfaces
React Angular TypeScript JavaScript
DevOptic UI · Angular builds at AccessEMR
L5 Services
Go Node.js Express C# / .NET PostgreSQL Solana
DevOptic backend · SolPayPlus
L4 Observability
Prometheus DevOptic
3 clusters · 200+ endpoints watched
L3 Delivery
GitLab CI Jenkins
100+ pipelines · 5+ deploys a day
L2 Orchestration
Kubernetes Kubespray Docker Docker Swarm
100+ services, Swarm to K8s
L1 Network
Calico Cilium
CNI on bare-metal clusters
L0 Metal & cloud
Bare metal AWS RDS S3 IAM
SystemSpecs racks · AccessEMR on AWS
AVAILABLE FOR SENIOR & STAFF ROLES
Lagos, NG (WAT · UTC+1) / Response SLA: < 24h
[ CONVERSATION STARTERS ] 3 CHANNELS

Where we can start:

Ask me about migrating 100+ microservices to bare-metal Kubernetes, cutting incident MTTR with DevOptic, or open Senior/Staff platform infrastructure roles.

Bare-Metal & K8s Migration
DevOptic Observability
100+ Production Pipelines
Staff / Lead Platform Roles
Intro call
Hiring conversations, cluster architecture discussion, or a live DevOptic walkthrough.
30 min · video · WAT (UTC+1)
[ live booking engine ]
Loading live calendar availability for video consultation...