Backend software engineer working on distributed messaging systems at Telnyx.
Most of my day-to-day work is Python: backend services, asynchronous systems, databases, queues, and the less glamorous parts of keeping production software observable and reliable. I like understanding why a system behaves the way it does, especially when it misbehaves under real traffic.
Outside work, I tend to follow whatever seems interesting at the time. That has taken me through compilers, embedded devices, WebRTC, Android, small shells, and a few experiments in Swift. Nothing especially grand—mostly an excuse to learn how another part of the machine works.
January 2025 — present
- Develop and maintain backend messaging services serving production traffic.
- Work with FastAPI, RabbitMQ, PostgreSQL, SQLAlchemy, Alembic, and Docker.
- Contribute to systems with strong observability and reliability requirements.
- Take part in on-call rotations, incident response, and postmortems.
March 2024 — September 2024
- Worked on telecom backend systems using Django and shell automation.
- Debugged backend and system-level problems with GDB, Valgrind, and PDB.
- Improved unit-testing practices and CI/CD workflows.
March 2023 — September 2023
- Built Django services, REST APIs, internal tools, and React interfaces.
- Focused on maintainable automation for accounting workflows.
March 2022 — September 2022
- Built real-time communication features with WebRTC.
- Worked on interactive web and 3D components.
- Backend: Python, FastAPI, Django, PostgreSQL, Redis, RabbitMQ, Kafka, SQLAlchemy
- Systems: asynchronous services, distributed systems, REST APIs, Linux, Docker, CI/CD
- Other languages: C, C++, Java, Kotlin, Swift, Bash, JavaScript
- Reliability: Prometheus, Grafana, production debugging, incident response
Dublin City University, Ireland
BSc Computer Science & Software Engineering
A little client work
Not a grand portfolio—just a few small things I have helped put into the world:
“Programs must be written for people to read, and only incidentally for machines to execute.”
— Structure and Interpretation of Computer Programs

