There and Back Again

Published on
There and Back Again

Recently things have come kind of full circle for me, career wise. I’m really thankful for the whole journey, and I think reflection is a good practice. Plus it might help someone considering a career in software to hear what one person’s path was like or give someone interested in collaborating with me a bit more background.

So here’s a short story1.

The Shadow of the Past

Years ago, after getting into software development mostly via participating in an open source Python web framework, I landed my first actual — “wait you’ll pay me for this?” — coding job.

It was a contract role with a Christian ministry called Amor where I got to work along with a more experienced developer who I knew from working on the web framework (hi Bob!). I learned a lot and made some good contributions to Amor’s internal systems, and soon picked up another contract with a Silicon Valley startup (hi Jamie!).

That startup was called Polimetrix (now absorbed into YouGov) — it was a fun blend of political, data science and computer nerds. I helped build the web-based survey system that was used to run opinion polls. My first task out of the gate was to write a parser for a limited subset of Python 😳. The main goal was to prevent runtime errors during surveys by type-checking the Python-like code that analysts would embed in questionnaires. It was pretty far removed from web programming, but somehow I managed to actually build something that worked.

Anyhow, that’s how I spent the first six months of my professional software development career; self-employed, doing contract work, learning and building.

Many Meetings

I’m going to fast-forward a bit here, as this story is more about the big picture than all of the fine details.

That contract with Polimetrix actually led to the chance for a full-time role with them — and as a dad of young kids at the time, that stability felt like a good choice. Time passed and that full-time role led to another full-time role at another startup (Bump) and then another (at Google) and then … well, time marched on and I actually just marked 10 years working at Google alone back in 2023.

I went from web developer, to mobile backend developer/devops to mobile application developer; from working with small startups to being a small part in one of the biggest companies in the world.

It took me quite a while to adjust to working at Google. I was thankful that I got to join along with quite a few teammates from Bump, but I didn’t know Java or really anything about Android development and I was placed on a team building the Google+ app. The team and project were pretty chaotic, and I felt like I was just keeping my head above water. I guess I kept up enough though — within about a year of joining Google, the decision was made to spin Photos out of Plus, and I was able to be part of the Photos team from the beginning.

I spent ~8 years helping to build and maintain Google Photos for Android. It was almost certainly the biggest software project I’ll ever work on, I got to work with many kind and hard working people and grew a lot as a software developer. I did a lot of “backend of the frontend” sort of work with SQLite, syncing media library metadata and creating a system for coordinating local and remote state changes. The public facing feature that I had the biggest hand in that still lives on in here in 2024 is Memories — I was the Android tech lead for that project for several years.

A Shortcut to Mushrooms

Even though Photos was both a great team and project, by 2022 I was ready for a change. Google was pretty good about allowing internal transfers (even for remote employees, at the time), and I joined a small, scrappy team within YouTube working on building a mobile video editor using Flutter. I was excited to be building a creative tool, working with Dart+Flutter on a daily basis and to be back on a small team.

Despite being situated in the large YouTube org, it really had some of that startup feel. It felt like each person on the team was absolutely crucial to success, like it was up to us to make it or break it.

All of our hard work culminated in the launch of YouTube Create for Android in September of 2023. Even though Photos was a bigger and more prominent product, I felt like I had more of a direct hand in helping to bring YouTube Create to the masses — I was definitely a different developer than I was back when I joined Google.

The Breaking of the Fellowship

In early 2024, the YouTube Create team was notified by management that our job roles were eliminated, and that YouTube Create was being moved overseas to a new team. It was a layoff on paper, but we were all offered new roles doing various things related to YouTube.

The decision was spun as the project “graduating” to a new stage — but it was a stage where those of us who had dedicated long hours and lots of effort weren’t needed anymore. It’s likely that independent status within the org made it an easier decision for management to pluck the project up and situate it somewhere else. So even though we delivered on the “make it”, YouTube decided to “break it”.

I was pretty bummed — I really enjoyed working on the team, and it felt like we had done so well and still had so much ahead of us. I didn’t really want to slot into working on some other random thing at YouTube (which was likely related to YouTube Shorts, which I pretty much despise).

The Road Goes Ever On

After talking through the options with my wife and soliciting advice from a few trusted friends and colleagues, I opted to pass on the new role offered at YouTube and go independent: to do contract work like I had done back at the beginning, and possibly pour some of my efforts into projects of my own creation2. To leave the comfort of the big stable corporation, and make it or break it.

So far I’ve been very fortunate to get to collaborate with the team at Convex. They’re building some really innovative stuff and it’s fantastic to be building along side of them; this week we just released Convex for Android!

So from open source, to contracting, to many years of full-time employment and back to contracting (and releasing open source code again!) - that’s been my road, and it’s been a good one.

I’ll leave you with a couple of quotes from Lord of the Rings:

It’s a dangerous business, Frodo, going out your door. You step onto the road, and if you don’t keep your feet, there’s no knowing where you might be swept off to.

  • Bilbo Baggins

and

When in doubt, always follow your nose.

  • Gandalf

Footnotes

  1. For no other reason than because I’m a big Lord of the Rings fan, this post’s title and the sections have names borrowed from Tolkien’s work. I think they kind of match up with my experiences/the content, though.

  2. TBD