How I got here

I've always wanted to understand how things work.

As a kid, I wasn't very satisfied when someone told me, "that's just the way it is." I wanted to know what was underneath. Sometimes that meant taking a toy apart just to see what was inside, or staring at the mechanism of a clock trying to understand how all those little pieces somehow agreed on what time it was.

I started using computers when I was six. My school had computer classes, and this was before the internet was really part of my life. We had to bring our own floppy disk to save our work so we could continue it in the next class. A couple of years later, my mom brought home an old IBM laptop. It was one of those chunky black computers with the little red pointing stick in the middle of the keyboard instead of a trackpad. It ran Windows 95.

Around the same age, she brought me a toy car. She probably thought it was just another toy, but this one was different: you could program a sequence of movements into it.

I don't remember many details about the car anymore. What I remember is entering the steps I wanted it to follow and then watching it execute them one by one. I could decide what I wanted a machine to do, give it instructions, and watch my plan happen in front of me.

I didn't know what programming was yet, but looking back, I think that was the first time I experienced it. There was something about that combination of control and freedom that clicked with me.

A programmable toy car similar to the one I had as a kid
A programmable toy car similar to the one I had as a kid.

Learning to make things

Computers became a bigger part of my childhood after that. I played The Sims, SimCity, and Age of Empires, and spent a lot of time exploring Microsoft Encarta. Then the internet arrived and made the computer infinitely more interesting.

One Christmas, my mom gave me a first-generation iPod nano. Of course, an iPod wasn't particularly useful without music, so I had to figure out how to get some. That introduced me to Ares, LimeWire, eMule, and the early-internet experience of never being completely sure whether the file you were downloading was actually a song or a virus. I learned that lesson a few times.

Music was already a big part of my life. My father is a professional musician, so I grew up around instruments, rehearsals, and bands. I discovered Cool Edit Pro and started recording songs of my own. They were mostly very cheesy romantic songs, and thankfully most of them have disappeared.

Music led me to video. I wanted to make my own little movies, so I started experimenting with Windows Movie Maker, then Sony Vegas and Adobe Premiere. Eventually I discovered After Effects, and suddenly I wanted explosions, visual effects, titles, animations, and basically everything my computer was least capable of doing.

Premiere and After Effects barely ran on the machine I had, so I started learning about computer hardware. I became obsessed with processors, memory, graphics cards, motherboards, and finding the right combination of parts for editing and rendering video. At one point I tried updating the BIOS on an old computer and completely killed it. That was one way to learn.

Eventually I decided to build my own PC. I couldn't afford all the parts at once, so I'd save enough money for one component, buy it, and then start saving for the next. It took around eight months. The hardest part was watching the component I had spent weeks researching become "old" while I was still saving enough money to finish the computer.

Eventually I had everything. I built it, turned it on, and it worked.

The computer itself wasn't really the goal, though. I wanted a machine that would let me make things.

When I was 16, I started recording videos of my father performing. At first I was doing it with an iPod touch, another gift from my mom, and the videos weren't bad. Around the same time, I started a YouTube channel and made vlogs. It even got a little traction.

Eventually I got access to a Canon 600D and a cheap 50mm lens. Suddenly my videos started looking like actual productions. I became convinced I was ready to shoot a proper music video, so when I was 17 I asked my father if he could pitch the idea to his band.

They agreed.

I charged very little. For me, getting the opportunity to produce something for an established band was much more valuable than the money. That became my first small video production business, and soon I was shooting music videos for other bands too. I also used the camera for photography and made some extra money taking pictures.

I don't remember thinking that I was becoming an entrepreneur. I knew how to make something, found people who wanted it, and figured out how to charge for it.

Working on one of my video productions when I was a teenager
Working on one of my video productions when I was a teenager.

Learning to program

Around the same time, I was becoming increasingly interested in something else: I wanted to know who actually told computers what to do.

I didn't know that I wanted to be a programmer. I barely knew what a programmer was. But I knew I wanted to be one of the people who could make computers do things. Eventually I learned that software engineers created the software I was using every day, so I started learning how to write code.

I built a website. It was awful, but it worked. That was enough.

I went to university to study Systems Engineering and kept going deeper into programming. I became particularly interested in making software interact with the physical world, playing with PIC microcontrollers, then Arduino, ESP8266 and ESP32 boards, and Raspberry Pis.

A friend of mine had a company making guitar pedals, so I helped him develop their first digital pedal with memory and selectable effects. My brother is an electrical engineer, and whenever one of his projects needed software, I'd usually get involved. For one project, I wrote the code for a custom gate controller for an apartment complex. It had to read a collection of sensors and signals and decide when the gate should open and for whom.

Inputs, instructions, decisions, actions. Not that different from that little car.

While I was at university, I worked all sorts of jobs. Then an opportunity came up to join CIMAV, a research center in Chihuahua, as a programming intern. There was one problem: it was unpaid.

I would have to quit my job and work full-time for six months without a salary while still paying my university expenses. I decided to do it anyway. Four months later, they offered me a full-time engineering position.

That's where I started working professionally with Ruby on Rails and where programming went from something I was learning to my career. It's also around the time I became interested in building a software company of my own. I made custom software for a few clients, but I knew very little about how startups actually worked.

I wanted to find out.

Building teams, then starting over

I left Chihuahua and moved to Monterrey to join SkydropX, a YC startup, as a software engineer. I expected to become a better programmer. My career went in a slightly different direction.

A few months after joining, I became an Engineering Manager. Not long after that, I led a prototype that became the company's first full software product. As the product and company grew, I eventually became VP of Engineering, helping build the engineering team, processes, and technical foundations that allowed the company to grow and expand into other countries.

It taught me a different kind of building. Instead of only building software, I was helping build a team and an organization around it.

Then I got married. Then COVID happened.

After spending years inside a fast-growing startup, I realized I had learned a lot about how startups operated but very little about how large, established software companies worked. I was also missing programming.

My wife and I decided to move to Ireland, and I joined Zendesk as a Senior Software Engineer. Going from VP of Engineering back to individual contributor might look like moving backwards on an org chart, but it didn't feel that way to me. I wanted to write software again, learn how a much larger organization worked, live in another country, and see how far I could push myself somewhere completely unfamiliar.

Moving meant leaving our families, friends, routines, food, weather, and almost everything we knew behind. It wasn't easy, but building a new life together also became one of the experiences that strengthened our marriage the most. When you move somewhere where almost nothing feels like home, the person you moved with quickly becomes home.

Dublin city
Starting a new chapter in Ireland.

Still building

I've noticed a pattern throughout my career: I like finding out how far I can go.

Whenever I feel like I've stopped learning or reached a ceiling, I eventually start looking for another one. That has taken me from Chihuahua to Monterrey, from Mexico to Ireland, and from programmer to engineering leader and back to programmer again.

All along the way, I've kept building things of my own. The projects have been very different from each other. Some became real products. Some didn't go very far. Some I built because I thought there might be a business there, and others simply because I wanted to learn something or because the idea seemed cool.

For a long time, I thought entrepreneurship meant finding a large opportunity and building a successful company around it. I don't think about it quite that way anymore.

Mostly, I want to build things that solve someone's problem.

Sometimes there's a business there. Sometimes there isn't. I'm increasingly okay with that.

When I look back, there isn't really one moment when I became a programmer or a builder. There was the kid taking toys apart because he wanted to know what was inside. The programmable car. The old IBM laptop. The terrible songs and the terrible website. The computer I broke and the one I eventually built. The music videos, microcontrollers, startups, and everything that came after.

They all came from roughly the same place.

I've always wanted to understand the world around me, figure out how things work, and then see if I can make something of my own.

Programming just became the most powerful tool I've found for doing that.

I'm still curious how far I can take it.