Software engineer @ Google · KMP Foundations team

I own annotation processing for Kotlin and work on Kotlin Multiplatform build performance at Google.

Writing about what I learn on the way. Opinions are my own.

About Me

I'm Alfonso, a software engineer from Chihuahua Mexico, living in Mexico City and work on the Kotlin Multiplatform Foundations team at Google. I own annotation processing for Kotlin: I keep the KSP and KAPT engines up to date with the compiler, improve their diagnostics, and make them faster. I also work on Kotlin Multiplatform build performance: caches, Objective-C header generation, and the parts of the compiler that slow down on very large codebases.

Before Google I was a full-stack engineer, mostly at startups, working in Python, Go, Node.js, Swift and Kotlin. At biobot.farm, an agtech startup in Mexico, I led the iOS, Android and web teams. As a contractor on Google Stadia's video quality team, I led the design of CrowdSense, a tool for measuring video quality to improve ML compression. At Platzi I led the home feed rework on the AI team.

For most of those years I was the backend engineer mobile teams depended on, so I know their pain points firsthand. That's a big part of why I care about Kotlin Multiplatform today.

I also kept drifting toward lower-level systems. A homelab that began on an old Android phone. A Bazel toolchain that cross-compiles C++ for ESP32 microcontrollers and flashes the board as part of the build. And monitor-control, a C++ background service that controls my monitors over I2C on Linux. Compilers turned out to be where that curiosity was heading.

This site is where I write about what I'm learning: how annotation processing and Kotlin Multiplatform work inside the compiler, and what it's like to learn compilers as a working engineer.

Writing

First post coming soon.

All posts →

Open Source

Open source is what made me want to become a software engineer, starting with my first Ubuntu install in 2009. Today most of my contributions are in the Kotlin toolchain.

Kotlin toolchain

  • KSP (2026): better diagnostics when code generation fails (#3195) and a fix for a crash users reported (#3138).
  • Kotlin compiler (2025–2026): Kotlin/Native performance and scalability.
  • Also: Android Lint, Guava and Gson.

My projects

  • monitor-control (2025–2026): a C++ background service that controls monitor brightness over I2C on GNOME Wayland.

Earlier contributions

  • mmp (2021): an npm-style package manager for Python projects.
  • bottle-cors-plugin (2020): CORS handling for the Bottle web framework.
  • orator-validator (2020): model validation for the Orator ORM.
  • Masonite ORM (2022): bug fixes and a better default for the model migration command.
  • Bottle (2020): adding bottle-cors-plugin to the official plugin list.
  • gspread (2020): column search.