sarahlacerda.me

Sarah Lacerda

Senior Software Engineer · Ottawa, Canada

Backend engineer building reliable systems across financial infrastructure, cybersecurity, and decentralized communications.

I work where correctness and trust matter: payment infrastructure, security data pipelines processing billions of events, and the identity and routing services behind federated messaging. I'm currently at SimplePin, working on backend systems for payments. Outside work, I build and operate Gua, a messenger built on Matrix.

Selected work

Personal projects; most of my professional backend work is closed-source.

Founder and principal developer 2025 · now

An experimental messenger built on Matrix, exploring whether a federated, end-to-end encrypted network can feel as simple as WhatsApp.

Gua's welcome screen on iOS
The hard problem
Phone-number sign-up and contact discovery usually assume one central directory. On Matrix, accounts live on independent homeservers, so the app has to find the right homeserver for a number before sign-in, without asking people to choose one.
Key decisions
  • Identity: an OpenID Connect provider written from scratch in Java, with a PIN or passkey as a second factor.
  • Contact discovery: address-book numbers are hashed and matched in memory and never stored. The directory they are matched against is keyed by peppered hashes.
  • Routing: the app finds a number's homeserver before sign-in. Routing across independently run homeservers, with a signed, append-only roster, is experimental.
Operations
Kubernetes, with separate development and production environments and approval-gated production deploys.
Status
Invite-only beta on iOS and Android, federated with the wider Matrix network.
Talk
Making Matrix Feel Like WhatsApp Without Centralizing It

Lightning talk · Matrix Conference 2026, Malmö

Other projects

Ammo Tracker

Product craft · Personal iOS app

A local-first iOS app for ammunition inventory and range logging. It works without an account or analytics; receipt and PDF parsing runs on-device using Vision, and inventory data is not uploaded to any cloud service. Localized in six languages, with a one-time Pro upgrade.

Swift · SwiftUI · Vision

Download on the App Store
Ammo Tracker dashboard with inventory totals and stock targets Ammo Tracker inventory list

Faturas

Private system

Java/Spring service that consolidates credit-card statements from multiple issuers into a single monthly ledger. Issuer-specific parsers normalize transactions into cents, and reconciliation checks block publication when calculated totals do not match the source statements. Source and demo are private because the system processes personal financial data.

Java · Spring Boot · Financial reconciliation

Homelabs

Infrastructure

Private Kubernetes homelab for deployment automation, observability, and zero-trust networking. I use it to operate personal services and practise production-grade reliability techniques.

Kubernetes · Helm · Headscale

Earlier work

Archive

Raw sockets, seam carving, a tiny Linux distribution, and other university experiments, preserved in their original condition.

Experience

2026 · now

Senior Software Engineer · SimplePin

Backend systems for payment infrastructure, including architecture and system design.

2024 · 2026

Software Engineer · Forescout Technologies, Ottawa

Backend and cloud data-platform engineering for cybersecurity products: Java/Spring services and data pipelines on Elasticsearch and Azure Data Explorer, for systems processing billions of security events. Led the backend implementation of a staged migration of production data workloads from Google Cloud to Azure, with no customer-visible downtime.

2022 · 2023

Senior Software Engineer · PicPay

Backend services for PicPay's cryptocurrency exchange, within a financial ecosystem serving more than two million monthly active users: Java/Kotlin services and event-driven workflows for financial operations.

2020 · 2022

Software Development Consultant · Thoughtworks

Backend and SRE work on a platform with over 10 million members: built and maintained Java/Spring microservices, mentored junior engineers, and supported operational and security incidents.

2019

Backend Software Engineer · Sinch

High-throughput messaging workloads on Kafka and Redis.

2018 · 2019

Researcher in Software Development · CNPq

Software for a research group at the PUCRS university hospital.

2017 · 2023

BSc Computer Science · PUCRS, Porto Alegre

Minor in Data Science; graduation class speaker.

About

Outside software, I'm a sport shooter, play piano, and spend time kayaking, skiing, and travelling. I also really like ducks.

Sarah on a coastal trail, with a fjord and steep cliffs behind
Gros Morne National Park, Newfoundland and Labrador