To be honest, becoming a software engineering intern was not in my plans at that time. I was too focused on my campus life to think about my career. However, I did want to try some new things, and find opportunities to grow and change my self. I came across the ad about Google internship from our department so I decided to give it a try. I was really lucky to pass each stage: the online assessments, writing my resume, and the interviews.
Doing an interview was an unfamiliar experience for me. At that time, I had only done an official interview once with Asus. Just like what people said, Google interviews involved technical and algorithmic problems. Some of them was really challenging for me. I was really lucky to get selected. Since I did not apply for any other companies, I would certainly have a very different summer vacation if I did not pass the interviews.
Google was a really special place. It gave me a lot of freedom. There were no pre-determined work hours. Some people came really early and left early. But there were also some people who came in afternoon. There were many snacks and fruits for the employees and I did eat a lot of them.
Initially, I spent a lot of time familiarizing myself with tools and the development process. I also read a lot of documents to analyze the system architecture in order to complete my project. One thing I found surprising was that, even with distributed complication, compiling a complex system still took a lot of time. I did understand why Google would try to design a programming language that compiles faster like Go. It was also my first time to develop a system that could potentially affect other people’s work if bugs were introduced by my commits. That made me became extra careful about my work.
Google had many special in-house tools and development systems. In addition, other services like Gmail and Docs were also indispensable for the employees. Just like what they said, “Eating your own dog food.”
Most of the interns were from National Taiwan University, and that made me a little bit lonely. Although the interns ate lunch together every day, I still felt uncomfortable. But it did make sense. Students from other cities would certainly be less willing and less capable to do an internship at Taipei. After I heard about everyone’s story, I really felt I still had many areas that I could work to improve.
During the internship, I discussed my thoughts and doubts about my future with senior engineers. I even had an opportunity to have an 1-1 with Li-feng Jian to discuss about industry and academia.
When working at Taipei 101, I often liked to walk toward the window and watch the city outside. The cars and people below appeared to be so small. I still remember some memories while I worked there: Every morning when I walked in the building, there were always some people handing out flyers; Once I was stopped by the guard at the building because I did not look like an office worker; And there were many expensive restaurants on the lower ground floor.
Because of the internship, I had to find a place to stay for 2 months. It was not that easy. I searched the listings on the Internet and came to Taipei by myself in order to inspect the places. In retrospect, the place I stayed eventually was still not very satisfactory. But this was my first time renting a place, so I think I still learned a lesson.
I had to adapt to many things when I moved there initially. I didn’t know where to eat, where to buy. And I usually had to bring a map with me all the time. (I didn’t have a smart phone at that time.) Although I spent a lot of time exploring at first, I slowly developed my routines. Each morning I took MRT towards Taipei 101, I would read the book “Theory of Computation” to prepare my courses next semester. Once I got off MRT, I started to listen to English podcasts. At work, I would eat my breakfast and plan what to do today. When I got tired, I ate something and look outside or read some reference books. I ate lunch with colleagues each day and took a snap before resuming working. After work, I walked back and continued reading. Each evening I prepared a different course such as Computer Organization. Just like before, I always wanted to establish patterns during my life, and figured out ways to fill all of my time. It was like this when I was at NCTU, it was also like this after I went to Taipei.
Google was really a place that made me feel safe and warm. Everyone was friendly and gave me a lot of guidance. Having the opportunity to work with many professional colleagues really made me see what I lacked. I really hoped I could improve and become better in the future.
Although there were no pre-determined work hours, I still felt the pressure to do great work. It’s really tiring to code whole day.
The 2-month internship finally ended. Although I had the opportunity to work part-time at Google once the semester started. I turned it down because the distance between Google and my school was too long. I still wonder now how things would turn out differently if I had made a difference choice.