About

My software engineering career began more than 13 years ago as the sole engineer for a hospital billing platform handling claims from 30 to 50 hospitals and hundreds of thousands of reais in monthly payments. I wrote its Java code, maintained the on-prem Linux server, deployed releases, handled support, and trained users.

When Toggl hired me, I knew Ruby but had never used Elixir. I learned in production and became the largest contributor to Toggl Plan’s backend rewrite, spanning 19 of 23 product domains. We consolidated around 12 Ruby, Node.js, and Go services into one Elixir umbrella, reduced production from 3 large machines to 2 smaller ones, and shipped with zero downtime, about 40% less code, and faster API responses. I later built billing and attribution for thousands of customers, enabling per-seat pricing, promotions, and affiliate tracking. The pricing change, alongside other product and business changes, helped drive approximately 100% revenue growth. The backend maintained an estimated 99.99% availability, with around 350 minutes of downtime across 6 years and 8 months.

When Toggl Plan’s CTO became CEO, I took over the CTO’s technical responsibilities as the Engineering Lead. I became the product’s principal technical decision-maker and led about 10 engineers across backend, frontend, and mobile. With the PM, I selected work for each Shape Up cycle based on capacity and technical feasibility, reserved at least 20% for technical debt, built the hiring process, and created a dual-track career ladder later adopted across the wider Toggl group. I eventually returned to IC work by choice, helping a 4-person team maintain a large backend and building a backwards-compatible two-way Google Calendar experience from scratch in Elixir.

At PepsiCo, I designed a migration from a legacy identity platform to Okta spanning multiple applications and teams and serving tens of thousands of users. Since brands could not migrate on the same schedule, I used per-tenant configuration and per-user routing to keep both identity systems side by side. This allowed each brand and user to move independently, without a flag day or forced password resets. I also maintained 2 live GraphQL API versions as brands migrated at different speeds and championed LiveView patterns that I implemented across 8 product areas and the team later adopted across 13.