Senior software engineer · Python & Applied AI

I build systems that hold up.

I build reliable, data-intensive Python systems. At MediaPredict, I helped develop the platform from its early days, staying hands-on with architecture, implementation, and production operations.

Over the past 2 years, I've built and operated production LLM workflows automating research data categorization, cleaning, and quality screening. My focus is on making AI systems reliable, cost-effective, and genuinely useful, with newer hands-on work extending into agentic AI.

In the AI era, implementation is getting cheaper; architecture is not.

Selected work / MediaPredict / 2014–2026

Built early. Evolved in production.

I joined MediaPredict early, working alongside the founders on major architectural decisions for a distributed market-research platform. I built its foundation and stayed involved in the code, data, releases, and production operations for the next 12 years.

10,000+ records processed daily

Production LLM workflows for research data quality

Built and operated JunkRadar, a production LLM-assisted data-quality system processing 10,000+ research records daily. Combined deterministic checks with LLM classification, batching, caching, retries, and human review to eliminate routine manual screening while maintaining human oversight.

7M+ respondent rows · 300K+ unique attributes

A data engine with operational guardrails

Built a soft-real-time ETL engine with dedicated workers, validation, monitoring, operational controls, and circular-reference detection. Distributed Celery processing also eliminated up to 100 queries from large demographic reports and cut dashboard task fan-out threefold.

Data evolution & production reliability

Changing the system while keeping it dependable

Led the migration from PostgreSQL hstore data to standard BI columns, with background orchestration, operational controls, and extensive automated tests. Hardened Celery workers and event-driven pipelines with batching, secure delivery, and failure handling; used targeted tracing to investigate production behavior.

Principal Software Engineer (official title: CTO), 2021–2026.
Previously Senior Software Engineer and Engineering Team Lead. Alongside implementation, I set technical direction, mentored and hired engineers, reviewed code and designs, and worked directly with researchers and business stakeholders.

AI & engineering approach

Faster implementation. Deliberate design.

Good software needs structure, context, and a clear understanding of who will live with it after it ships. Clear boundaries and well-defined contracts let components evolve or be replaced without destabilizing the system. They also make AI more effective.

01

AI in product workflows

At MediaPredict, I expanded production LLM-assisted research automation: API integration, prompt design, classification, validation, guardrails, evaluation, and human review. Data-quality controls were part of the work.

02

Agents in development

I introduced agentic development workflows and use AI agents for codebase investigation, implementation, and test/debug cycles, with iterative validation throughout.

03

Design systems that can evolve

Set clear boundaries and interfaces so components can change without destabilizing the whole system.

04

Responsibility stays with me

I retain responsibility for system design, assumptions, edge cases, security, and production correctness. Reviewing the implementation and testing its behavior remain engineering work.

Technology

Deep foundations. New tools.

My strongest production experience is in Python and distributed data systems. Recent backend and AI work extends that foundation into asynchronous services, embeddings, and semantic search.

Backend & product

Python, Django, Celery, APIs, background jobs, and system integration. React for product interfaces.

Data

PostgreSQL, ClickHouse, Redis, SQL, and analytics pipelines. PostgreSQL trigrams and RapidFuzz for fuzzy and similarity matching.

Production & quality

Cloud platforms, CI/CD, automated tests, refactoring, incident resolution, and release discipline. Monitoring with Coralogix, Sentry, and New Relic, including custom spans.

AI and Automation

Production LLM-assisted workflows, RAG, embeddings, semantic search, classification, validation, guardrails, evaluation, human-in-the-loop systems, and agentic development.

Recent backend & AI work

FastAPI & Pydantic — extending deep backend experience to asynchronous Python services.

pgvector & Sentence Transformers — applied to embeddings, semantic search, and RAG.

LangChain, LangGraph & MCP — hands-on work building agentic workflows with guardrails and evaluation.

Earlier foundations

Software with a physical world attached.

At Inwindow and UrbanDigitalMedia, I built remote monitoring and control software for distributed digital-signage installations. Python, Django, PostgreSQL, device drivers, and automated alerts gave operators visibility into equipment health and reduced site visits.

At Dr. Oetker, I designed a manufacturing execution system from scratch. At ABB, I developed distributed services and SCADA systems for traffic, energy, and building automation, where downtime had immediate operational consequences.

That earlier depth in C++, device protocols, and system integration still informs how I think about reliability: understand the operating environment, make failures visible, and build for the people who depend on the system.

Let’s talk

Hard problems. Hands-on work.

I’m looking for senior, staff, or principal engineering work where architecture and implementation belong together, with a focus on AI-assisted systems.