I shamelessly wrote this article about my schedule in a day as an engineer at Google shortly after I joined in 2010. It’s obvious how much my schedule has changed in the past four years, in large part because I now manage a team and spend much less time programming than before. So now seems like a good time to start this blog post. It will also help me in my transition from a pure "individual contributor" to a manager. My position at Google is called "Technical Manager" (or TLM). I am responsible not only for the technical guidance of my team, but also for some personnel management related matters of my subordinates. I have written more details about the role of a technical manager in another blog post "Managing a Software Team at Google", so I will not repeat it here. Our team has multiple projects, the largest and most important one is the Chrome data traffic compression proxy service. Generally, we are concerned about making Chrome run better on mobile devices, especially for users in emerging markets where the network is slow and expensive. The best part about my job is the variety. Every day is different. Here is my "typical" day, but don't get too caught up in the details. Every day is different: 6:45am – Wake up, wake the kids, dress them, make breakfast, then take a shower. 8:30am – Get on my bike to work (takes about 10 minutes), grab a quick breakfast and go to work. 8:45am – Check the dashboard to see what’s happening with the services we’re running — traffic, latency and compression, data centers. 9:00am – Check email. It’s a constant battle that often leads to burnout, but lately I’ve been using Inbox to help me get through it. 9:30am – Looking at a slide deck of new features coming to Chrome, and comments from a PM. The plan is to share this slide deck with other product managers and engineering leads, get resources committed to the project, and start working on this new feature this quarter. 10:00am – Chat with my team about the bug reports we are tracking, and try to find the root cause of the bug. Spend another half hour running the problematic part and checking the logs to confirm my suspicions. ***Update the bug report. 10:30am - I find myself in a morning filled with meetings and now I finally have a precious hour to code. I'm trying to rewrite the MapReduce pipeline in Go. The goal is to keep it maintainable while adding some new features. I was going to finish it, but time is running out and one test is still not working. I'm going to sulk for the rest of the day. 11:30am – Video conference with my colleagues in Mountain View about a new project we’re launching. I’m super excited to be a part of this project. 12:00pm – Stop by the cafeteria to grab a packed lunch. I hate eating lunch at my desk while reading Hacker News or something like that. Some bad habits are hard to break. Still, I don’t understand how Bitcoin works. 12:30pm – Quickly organize an internal meeting with the VC team to prepare for the upcoming agenda. 1:00pm – Interview meeting. We review multiple candidates and complete interviews to decide whether to make an offer. This is sometimes easy, but often difficult and can lead to contention, especially when candidates have mixed results during the interview process (which is the case with almost everyone). I leave this meeting wondering how I ever got an offer in the first place. 2:00pm – Weekly team meeting. Usually one or more people present to the rest of the team what they are working on, with the goal of getting feedback or just sharing results. Sometimes we also meet weekly to set quarterly goals and track progress. Or we don’t have weekly meetings at all. 3:00pm – One-on-one meetings with my direct reports. I check in on team members, make sure I’m up to date with their latest updates, and discuss technical issues with them, as well as other topics like career development, setting priorities, and performance reviews. 4:00 PM – 3 days a week I leave work a little early and ride my bike for an hour. I find that 4pm is usually when I’m most fired up, and it’s a great way to relax after a hard day at work and enjoy the beautiful scenery of Seattle. 5:00pm – Go home, take a shower, make dinner for my family, and draw some weirdly colored pictures or work on an electronics project with my 5 year old. This is my favorite time of the day. 7:00pm – Make the kids’ beds and read lots of stories. 8:00pm – Free! I usually spend some time in the evening checking emails (especially those I skipped earlier at work), but avoid doing “real work” at home. Then, depending on my mood, I might watch an episode of Chef with my wife or read a book (I’m currently reading Haruki Murakami’s 1Q84). I'm aware that there are more meetings now than in my early days at Google, but I'm also on more projects. Most of the interesting technical work is done by the engineers on my team, and I envy them. They're deep into building some cool stuff. But at the same time, I enjoy being involved in many projects myself, and being able to coordinate across multiple active projects and scout out new ones. So that's a fair trade. |
<<: How should a designer with zero foundation learn front-end
>>: Why is China's Internet frequently integrating and ruining its own future?
Douyin’s brand advertising product matrix: Douyin...
I believe everyone is familiar with the card coll...
iOS is a mobile operating system developed by App...
Once there is an incident and a discussion, a fir...
Nowadays, the times are developing faster and fas...
Chapter 1: Basic Concepts and Principles of SEM 1...
[[414446]] This article is reprinted from the WeC...
The story begins with hotmail. In 1996, two engin...
Recently a group of children who made creative bi...
This article introduces several key points that b...
It has been 6 years since the mini program was la...
Finally, the United States made a decision - to i...
The most painful thing in marketing promotion is:...
Q: Can I cancel my WeChat Mini Program account? A...
The health and medical beauty industry, which has...