At Facebook, lots of great software engineers, who impacted many other engineers in the world, worked, or still working here. Kent Beck is one of the latter.
When I was in Shanghai working at OOCL I first learned his name. Among a small group of colleagues enthusiastic about learning something new, to improve code quality and ourselves, I read books and articles about software methodologies. It was the time I knew extreme programming, wrote xUnit tests, even tried but soon turned away from Test Driven Development. My team at that time also adopted Scrum, an Agile methodology. All of them either invented by Kent Beck, or inspired by Kent Beck, with or without his other coworkers (I wrote some posts like this during that time). Such experience not only helped me to accumulate my knowledge base, but also formed my curiosity to keep learning, which leads me all the way to Carnegie Mellon, to Oracle in Bay Area, and Facebook.
I didn’t think of working with Kent Beck, though. Even after I know he is my colleague and is a technical coach, I didn’t think of being coached by him. I didn’t imagine an opportunity emerge in a fast, break-boundary way, a Facebook way. In September I visited New York office for a week, when Kent Beck also started a trip there, and that week became a big surprise for me: I attended a tech talk given by him on Tuesday, I watched a Facebook live where he interviewed my team mate Rohan on Wednesday, then on Thursday afternoon he joined my team’s table in the New York office happy hour, where I encouraged myself to ask him: Can you coach me? He said, “Sure!”And we set up a time right on Friday morning. Wow, that’s really happening in a “move-fast” way, exciting!
The first coach session on Friday though, cannot be described as a perfect start. I booked an one-hour meeting, waited in the meeting room for 30 minutes, only to send a reminder message, followed by another message saying I will reschedule. But once Kent read my messages he apologized for his time management(he was talking to another coworker) and we still made the remaining time. We talked about my experience, how to work effectively in Facebook, habit of learning something new, and we agreed to meet again in a month.
I scheduled another coach session with him in October when I visited New York office again. I arrived the meeting room on time, Kent was already standing outside the room. When I arrived, he stepped closer to the glass wall, stared at guys inside the room, kicked them out. We talked about my current project, he asked about it, evaluated different methologies that could fit in my shoes, discussed next directions I could take, and told his story working on a project at Chrysler. This assured me that I should focus on correctness of my current project, instead of improving its time and space efficiency at this point.
Then I asked several questions after that topic.
I asked if it’s better to follow trend of technology to experiment something new, or to revisit computer science fundamentals more frequently. He encouraged me to keep curious of tech trend, invest some time to do experiments, digg in more once I meet something unfamiliar, and doing it on a daily basis will grow me a lot in a long run. (Retrospectively, this is the approach I took year after year. It’s actually entertaining way, like exploring war fog in games like StarCraft)
I asked his opinion of attending tech meetups and conferences. He strongly recommended me to do it. Some engineers, (like me), are not good at advocating their achievements, not good at talking to people on topics they actually care. And this could be addressed by practicing to be more social. He asked me to learn doing that, be open and talk, try different ways like using analogies. And I am happy that I can learn directly from him on how to do that.
I found that even he already acquired fame from his achievements, works, books, he still keep thinking and writing. He works hard to have influence on engineers, guide them, performs as catalyst to grow them. I feel lucky to work with him, and never feel any estrangement.
An hour long session soon came to an end, when I mentioned that I have an infrequently updated blog. And he said: “Why not resume it?” And he asked me to write about these sessions.
So here it comes.