Alex Spyridis

Staff Software Engineer · Lisbon, Portugal

Twelve years of shipping the unglamorous parts that hold systems up.

I work end-to-end across backend, platform and full-stack — billing and licensing systems, event-driven services, identity — and I run coding agents through the whole lifecycle, not just the fun bits.

Currently embedded in client engineering teams at madewithlove. Before that: nearly four years on a design platform with 28M+ users, two years running my own software company, and earlier, meter firmware and mining simulators.

Python · FastAPI PHP · Laravel PostgreSQL · RabbitMQ Claude Code · agentic SDLC Newer ground: Kubernetes · Terraform · React
Alex Spyridis
How I build now

Agents across the lifecycle

Claude Code and Codex from requirements and technical planning through architecture, implementation, testing, debugging, review and rollout — on a large multi-repository platform, with normal review and test discipline intact.

Range

Firmware to cloud

C/C++ on electricity meters and mining simulators at the start, then PHP and Python platforms for most of the years since. The infrastructure layer — Kubernetes, Helm, Terraform — is the newest part: about six months in, learned on the job with agents alongside.

Ownership

Ran the whole thing once

Founded Singularity Technologies and ran it for two years — contracts, clients, requirements, delivery. It is why "owning a feature end-to-end" doesn't feel like a stretch assignment.

The kind of work I take on

Described by problem shape rather than by client — the specifics live in my CV and in conversation.

Commerce & billing systems

Money that has to reconcile

Order-to-invoice flows, subscriptions and auto-renewal, settlement processing with configurable rules, VAT and multilingual invoicing. The work is mostly in the seams: keeping commerce, licensing and CRM agreeing with each other without anyone reconciling spreadsheets afterwards.

Platform & integrations

Services that stay up

Event-driven services and message-queue middleware made reliable with distributed locking, caching, deduplication and retry handling. Identity and access across environments with OIDC. I contribute to the Kubernetes, Helm and Terraform layer underneath rather than own it — that part is still new to me.

Reliability & performance

Finding out why it's slow

Memory exhaustion, failing large-data exports, broken queue reconnection, async bottlenecks. One N+1 query turned 600+ queries per request into one and four seconds into 700 milliseconds — which is usually the shape of it: measure, then delete work rather than add layers.

Leading, not just shipping

Teams and legacy code

Two years leading a team of five, eighteen months as the go-to for onboarding and code review, and a habit of restructuring a core payment path into something testable before adding to it. Modernising an API so that adding hundreds of new products stopped being a project each time.

The path

Apr 2024 — now

Staff Software Engineer · madewithlove

Embedded in client engineering teams, owning features end-to-end alongside their developers and product stakeholders. Two engagements so far: a data platform (backend and platform) and a payments platform (team lead and full-stack).

Oct 2020 — Apr 2024

Full-stack Engineer · Desygner

APIs and reusable frontend components for a design platform with 28M+ registered users. Two years leading a team of five; the go-to for new developers and code review.

2018 — 2020

Founder · Singularity Technologies (Pty) Ltd

Custom web and mobile software for multiple clients, run solo and remote: contracts, requirements, build, production delivery. Property management with OpenCV meter reading, a geofenced workforce app shipped to the Play Store, a reporting engine over half a million records, and a campaign platform targeting across 25M+ contacts.

2017 — 2018

Backend Engineer · Urbanise

Smart utility and electricity metering: C/C++ meter firmware with GSM, Zigbee and OTA updates, C# and MongoDB services, and contributed to the Smart Utilities app on both stores.

2015 — 2016

Full-stack Engineer · StreamSource

Laravel applications and e-commerce with payment, courier and order-management integrations, plus automated CRUD generation from XML.

2014 — 2015

Backend Engineer · 5DT

C, C++ and Lua for heavy-vehicle mining simulators used to train operators safely. Led the light-vehicle simulator projects.

BEng Computer Engineering, cum laude — University of Pretoria, 2010–2013. Greek (EU) and South African citizen; English, Afrikaans, Greek.

Toolkit

Core, day to day

Python · FastAPI · SQLAlchemy · Pydantic · PHP · Laravel · Symfony

Data

PostgreSQL · MySQL · SQL · Redis · MongoDB · DynamoDB

Integrations & messaging

Stripe · HubSpot · Keycloak/OIDC · RabbitMQ · REST · SOAP

Tooling

Docker · GitHub Actions · Sentry · pytest · PHPUnit · Claude Code · Codex

Newer ground

Kubernetes · Helm · Terraform (~6 months) · React · Next.js · TypeScript (under a year) — mostly learned on the job, agent-assisted, and not where I'd claim depth yet

Used before, not current

C/C++ · Lua · C# · Aurelia · Vue · Flutter · Ionic · AWS (SQS, S3)

Alex beside an elephant in a South African reserve Alex holding a bass at sunset, South African highveld

Away from the keyboard

South African with Greek roots, now in Lisbon. Most of my time off goes outdoors — hiking, fishing, and going back to the South African bush for wildlife whenever I can. Also football, travel, and our local church.

And a stubborn side project making biltong — South African dried meat — in Portugal.