“So, this is how I lose my team. Or my job.” I thought to myself on a cold, January night.
My team’s responsibilities had just been shipped overseas in a reorg. For the last three years, I had been leading the reliability workstream for the Google Search App on iOS. And suddenly, I wasn’t.
We had been a small crew. We were ambitious and scrappy. We had no product manager, no program manager, and no UX designer. Technically, this wasn’t even a real team. But everyone knew that we were. We were proud of having accomplished more than what any of us could do alone.
Over those years, I had organically grown into a TL (team lead). I simply started with a small problem and naturally expanded it to include new domains that we later labeled “reliability”. I was then one writing design docs, the one negotiating OKRs, and the one organizing multi-team summits. I was even promoted for leading this workstream! The team and I felt inseparable. The mechanics of it all flowed like a river through my laptop.
Without me, what would happen to the reliability team? Would they be successful? And what would *I* do afterwards? Would I still be a software engineer working on Google Search, or was this finally my time to be laid off?
It took me a year of searching to answer these questions.
The Storm
When the reorg hit, my old team was shuffled around. Everyone except me was reassigned to other projects.
My immediate responsibility was to train the new team, who worked in another country. They had little experience in this space, so leadership was unsure how they would perform.
Fortunately, while I was the TL, I had been continually removing bottlenecks in the system. I had wanted to make myself obsolete. My goal was to spend more time on strategic, big-picture ideas and less time than responding to alerts and random bugs.
Over the next few months, I met with the new team online. I answered their questions efficiently. I plugged them into the existing systems that I had carefully set up. And, I traveled to their office for 2 weeks to run some in-person training sessions and I had more fun than I expected.
The new team was enthusiastic about taking on reliability projects. No outages happened and everyone was happy.
Well, everyone except me. I wasn’t sure what was going to happen next.
“So, what do I do now?” I thought. “Am I about to be laid off?”
What next?
Just to be safe, I made a list of potential teams to join (including staying with my old org). No idea was too crazy not to be considered.
After a lot of exploration, I settled on a Google.org fellowship. This was a 6-month rotation where a team of Googlers come together to solve a problem with a nonprofit.
At this point, a break from my routine sounded great. It would be an opportunity to learn more about web development, get some experience outside the Google bubble, and maybe even make society a little bit better.
Perhaps more importantly, I wanted some time to figure out what I would do long-term.
So, I secured my manager’s approval and I was off. (Also, having this approval was a good sign that I was not about to lose my job. That was a relief.)
The Fellowship
For my fellowship, I decided to work on CiviForm. The way I explained it to friends was like this.
Me: You know how government websites suck?
My friend: Yeah
Me: What if they didn’t suck?
My friend: 😯
In other words, CiviForm is an open source project that local governments can use to let residents apply for programs online. You can watch a 90-second video about it here.
My main project in CiviForm was to revamp the applicant-facing website. The UX team was churning out mocks every week, and I needed to implement them.
Additionally, we had a technical challenge. The old frontend was written in J2HTML because the original engineers were all backend developers that had no frontend experience whatsoever. We wanted to write all the new parts in Thymeleaf. (And I can assure you that Thymeleaf is much better than J2HTML.) It was a double migration, and it introduced some extra complexity.
After 6 months, I had I closed 78 issues and merged 130 pull requests. I was genuinely proud of what I accomplished.
I plan to write another article with more surprises from my time working on CiviForm. If you subscribe to this blog, keep an eye in your inbox. I’ll add a link here when it’s published.
Happily Ever After?
As the end of my fellowship approached, I thought a lot about what I would do next. Should I search for a new team within Google? Should I look for a new job?
With the help of a mentor, I made a list of all the things that I was looking for in a new role. And I realized, my old org had almost everything I wanted.
I decided to go back to the Google Search App on iOS. Specifically, the platform team. I like the people there, and I think the technical infrastructure is great. I really enjoy making tools for developers because, hey, I’m a developer. I know what developers want. I want to make their lives easier.
It feels a bit anticlimactic. But, I wasn’t laid off. And my current team has plenty of interesting things to work on.
Months later, I’ve settled into my new, old org. Everything is beautiful.
Well, until the next reorg.





Pingback: You are making a documentary at Big Tech Co. | Sheldon's Software