01 / INFRASTRUCTURE · AUTOMATION · AI

DevOps + AI.

Connecting infrastructure and AI automation.
From data and code to systems with verifiable results.

Explore projects
SELECTED ENGINEERING WORKData / Contracts / Automation

02 / SELECTED WORK

Two projects. Two system layers.

A product built around data.
Tools that coordinate the work.

PULSE OF EARTHDATA PIPELINE

Pulse of Earth

From seismic signal to product data.
Pulse of Earth data flow: IRIS, Welch PSD detector, quality gate, and application JSON.
~26s / MICROSEISMPython · ObsPy · SciPy
PROJECT / 01Proof of concept

Pulse of Earth

Seismic data as a product foundation. Processing Earth's weak signal, validating its quality, and publishing a stable JSON feed for the application.

PythonObsPySciPyGitHub ActionsJSON Schema
Decision
A static feed updates on a schedule. Reading these data does not require an always-on application backend.
Reliability
Current measurement → last confirmed measurement → baseline. A fixed 13 + 13 second breathing rhythm is independent of signal quality.
Code evidence
A data schema, spectral detector, and automated feed publication.
Open Pulse of Earth

The product landing page is public. The repository is private; full source access requires permission.

Architecture / Under the hood

04 COMPONENTS

ObsPy / IRIS

Seismic acquisition

Waveform data arrive through the ObsPy client. Stations without data are skipped; a station failure is never reported as a successful result.

A product data pipeline, not earthquake prediction.

Python code · excerpt
candidate = client.get_waveforms(
    network=net,
    station=sta,
    location=location,
    channel=chan,
    starttime=start,
    endtime=end,
)
if len(candidate) == 0:
    errors.append(f"{label}: no data returned")
    continue

Feed resilience

Demo scenario · not live measurements

Source availability
01 / CURRENTCurrent measurement
02 / LAST GOODLast confirmed
03 / BASELINEBaseline rhythm
app_pulse.sourcecurrent_measurement
breathing_rhythm · fixed_13_1313 s inhale + 13 s exhale
AI ORCHESTRATORCONTROL PLANE

AI Orchestrator

Coordinate. Verify. Keep the evidence.
AI Orchestrator control flow: task, agent routing, verification, and result evidence.
TASK → AGENT → EVIDENCEPython · Docker · API
PROJECT / 02Operational API

AI Orchestrator

Coordinating AI agents, automating repositories, and verifying results. A dedicated control plane for working across multiple products.

PythonDockerGitHubLinearAgent routing
Decision
Explicit project profiles and ownership boundaries. The Orchestrator coordinates work while product code and data stay in their own repositories.
Verification
Evidence collection and an action log. The minimal API exposes health, version, and managed projects; the container runs without root on a read-only filesystem.
Implementation limits
Terraform and parts of the staging automation remain prototypes that need validation before production.

Architecture / Under the hood

04 COMPONENTS

Python / YAML

Project boundaries

The API discovers project profiles in the projects directory. Each profile describes a managed product; product code is not moved into the Orchestrator.

A control plane; product code stays in its own repository.

Python code · excerpt
def _project_ids() -> list[str]:
    if not PROJECTS_DIR.is_dir():
        return []
    return sorted(
        path.stem
        for path in PROJECTS_DIR.glob("*.yaml")
    )

03 / ENGINEERING APPROACH

Engineering decisions should be clear.

01

Explicit boundaries

The product, its data, and its management tools have separate responsibilities.

Architecture boundaries
02

Predictable failure modes

Data quality and fallback behavior are defined in a contract that consumers can validate.

JSON Schema
03

Verified results

Automation leaves evidence: checks, artifacts, and a history of completed actions.

Verification tools

04 / CONNECT

Let's talk systems.

DevOps, infrastructure, and AI automation.

My GitHub profile