Bookmarking is the new /dev/null. It doesn’t need to be this way. If you feel you’ve lost focus and it’s been harder for you to read anything of substance, you are not alone. Today, I’m claiming back my focus. Come along for the ride. As you scroll through your day, you will keep finding interesting reads you’d like to go back to. You know you won’t. It’s…
I’ve never been big on New Year’s resolutions. I believe our lives have momentum. But life changes, be it relationships, job changes, or setbacks, and I just establish new resolutions on the spot. Life doesn’t wait for New Year’s Eve. Yet, this year I do have resolutions, but let’s start with dissolutions. Don’t think of the new thing you’ll do, but rather…
Systems design interviews can feel like the hardest because you can’t really practice them. Or can you? What is a systems design interview, anyway? To get a software engineering job you will usually undergo a systems design interview. Unlike a coding exercise, you will be asked to design a distributed system. This typically means a service such as Airbnb or Uber where you have clients…
My career accelerated when I started caring manically about numbers and measurements. And I bet yours would, too. I used to work with an engineer who would run many A/B experiments evaluating two CDN providers, and quite literally come up with results such as Latency p50 when sending images has improved by 7ms (-6%) “Look what a win!” Not so fast! What was wrong with the “win” above: Distribution…
In 2025 not one, but two friends from the Catalan tech diaspora in Seattle told the press they wanted Barcelona to be the next Silicon Valley. Both very accomplished tech execs for whom I have great respect. But I think they got this one wrong. We’ve been hearing this since the late nineties. Only in Europe the same vision was spouted for Paris, Madrid, Valencia, Cote d’Azur, Murcia,…
I’ve recently shared that I’ll be leaving Snap, my professional home for the last 8 years. I was a founding engineer of the team that ran the video transcoding service in 2019, and the last OG still in the team. One of the most recurring questions I’ve got recently is how a generalist engineer enters the media space. So, here we go. My role was quite broad. I’ve cared for…
The old investment adage says cash is king. In networking, cache is king. And you should learn to cache like a king. I’ll show why it matters, a few things to know, and I’ll share my ad-hoc solution to keep my cache warm. Why caching matters There are many reasons why you want to cache HTTP, be it a website or an application that downloads assets over the web. First, resource…
OpenAI has released a new text to speech model: large-v3-turbo (interesting discussion). The promise is large-v2 quality running faster than the “base” model. That sounds promising! In this post I’ll share how I made it work and my first impressions. How to use it in whisperx Neither whisperx nor faster-whisper support this turbo model yet. After some tinkering I figured that the easiest way to…
Do you want to save 50% on LLM costs? Read on I run a somewhat ambitious hobbyist project that needs tons of compute. Thousands of audio files are transcribed in my home lab every day. Then I use a mix of Google Gemini and OpenAI APIs to summarize, extract key data, etc. I could run a model locally, but I’d rather use the local GPUs to crunch these audios. Since I don’t plan to…
My project just wouldn’t exist without Google Gemini I wrote in May about how AI models support the Catalan language to wildly varying degrees. I get it, it’s a small language, but it is still a letdown. My side project for almost a year involves summarizing hundreds of thousands of files in Catalan. When I started, only OpenAI had decent support for the Catalan language, and I…
When BigQuery leads to Big Mistakes! Recently I bumped into one of the funniest bugs I’ve seen in a while. Google’s BigQuery is a fully-managed, serverless database for massive datasets. It truly is a fantastic product, but look at this: Pretty straightforward, right? Imagine these are not hardcoded numbers, but an actual division of business KPIs. You see the ratio between them,…
It was quite a week at the AI Engineer World’s Fair in SF. Outside the conference my highlights were catching up with old friends and getting on a self-driving Waymo. A freakin’ car that takes you wherever you want in the city without a driver, skillfully avoiding an intoxicated pedestrian, bikes and a dense column of smoke out of nowhere. Soon we are going to look back at this and…
I have a utility which I want to run within Docker periodically. The Docker container’s sole purpose is to run this utility, providing a controlled environment along with the necessary dependencies. The utility can be a shell script, python, a pre-compiled binary… anything. The natural solution is to schedule a periodic docker run execution through crontab. I don’t like it for a…
I have a confession to make: career progression was never my top priority. Doing cool shit Self-fulfillment and enjoying my work always came first - within reason. Like many engineers, I believed that doing difficult or tedious work would get noticed and suffice to advance my career. Common wisdom says it doesn’t work, but it does work; just at a slower pace. I moved around, landed on…
This is to you, software engineer. Leetcode has been damaging to our generation. It has made it so convenient to practice that every other candidate burns hundreds of hours. You either match it or are truly exceptional and lucky. Because everyone does it, it’s not a differentiator anymore, it’s a mandatory rite of passage. Ironically, the more leetcodeable a question is, the more…
0 -the number zero- has unique properties. 0 * x = 0, and you can’t divide x by 0. See, 0.000001 doesn’t even come close. Either you are the almighty zero, or you are some other number. Something similar happens in economics with Free — a price of zero. Say you buy your favorite pen for $2. If the price drops to $0.50 during a sale, you might get several. But what if it’s free?
The most valuable experience of side projects is the mistakes you make. You need to pick an untested solution and try to figure things out. Errors ranging from “not optimal” to “what?!” are the name of the game. In my current side project choosing SQLite was the most costly mistake. Simon Willison’s passion and social proof from Twitter’s indie hackers convinced…
This is not a blog, just notes I take. A blog carries some expectation of regularity, engineering notes don’t. Yet, like a blog, I need a place to host them —— a “hosting platform.” Here are my seemingly impossible requirements: On my own domain name, to have full control: not medium.com, LinkedIn, etc. Landlords are great one day, and not so much the next. No hosting to…
I’m no longer sure if I grabbed a domain to host these notes, or I found the domain and I ended up publishing these notes as an excuse to use it. Naturally, I wanted to use an email address from my own domain. I had previously used Google Workspace for this, but it starts at $72/year per domain. If you only need an email address, you can get this absolutely for free if you already use Gmail.
👋🏻 this is Xavier and I enjoy building software out of Seattle, WA. i’m currently working at Whatnot. in previous lives I’ve worked at Snap, Microsoft, and a few other places, from startups to large companies. check out my LinkedIn profile if you are really curious.
Like many of us nerds, I’ve had my fair share of side projects. A couple have seen the light of day and had enough repercussion in their niche that I’ve met people and made long-lasting friendships. Literally 20 years! The rest got buried in this too familiar cycle: incubate an idea, get it to 80%, realize that the remaining 20% is more like yet another 80%, then give up. The Pareto…