Engineering Life for Success

Support systems and structures are vital to the survival of any living organism. Beyond keeping the organism alive, they protect the organism from attacks and other forms of stress. Likewise, it is important for us as people (distinct from the physiological parts of us) and organizations to have strong and robust support systems.

Since I left Vietnam in Apr 2011 with the intention of finding work back in Singapore, life threw its curves and I ended up staying in 23 different places in 15 different cities. While I’m grateful that I didn’t have to worry too much for the most part of it, I do wish that I had more robust support systems in place. The purpose of this blog post is to document lessons learned in these 16 months, and to consider what I would have done differently. I will focus on two key support systems today: Health, and social life.

There is a Chinese saying that highlights the importance of health in a revolution (身体是革命的本钱). This of course doesn’t necessarily just refer to revolutions, but can be used in the context of any endeavor. The first thing I noticed on my travels is that it’s extra tempting to sleep in. Bad move. This immediately starts the day off on the wrong foot and increases the likelihood of sleeping late, entering into a vicious cycle.

The other aspect is the lack of a social structure for me in every city that I visit. Going for dinner alone, visiting tourist spots alone can be fairly emotionally draining too.

I’ve found planning to be very effective at mitigating against such issues, and am writing this down as an SOP for future reference when I travel. Simply by planning activities with other people, I immediately sign myself into social contracts that make sure that I am not stuck in the hotel room. The below are some preparatory steps for a one month travel cum leisure trip.

  • Two weeks before the trip: Make contacts at destination. Not everyone checks their email every five minutes, and getting to know another person takes some time. These can be done on the basis of interests (e.g. language exchange), professional activities, or on very practical needs (e.g. Couch Surfing). In my last trip to Beijing, I met up with about four people whom I knew via Couch Surfing, after glancing through over 230 profiles and sending out about 30-40 messages.
  • One week before the trip: Schedule appointments to meet up with people. Look up places of interest in the city and keep the list for reference if you run out of ideas. I’m not a big fan of tourist spots, but it’s something to do together with a local. If you ask, many locals tend to be happy to bring you around a bit if they have the time. I love breakfast meetings as they help me start my day on the right note.
  • Two days before the trip: Confirm appointments, ensure contact information is exchanged. If you’ve already got to know who you’re meeting to some degree, then prepare some conversation topics and do some research! This doesn’t need to stifle the conversation, but is a backup plan to avoid awkward silences.
  • First day/night: scout acceptable restaurants near your hotel that look acceptable. These will come in handy when it’s 7pm and the last thing you want is to wander around looking for a decent place to eat. Take a few minutes out of your tired first day to mentally mark fruit stalls and other necessities, and the following days will be a lot easier. Identify suitable places to exercise. They will decrease the barriers to exercise when the time comes.

This SOP is certainly no magic bullet, but I’ve seen how the presence of people around made a huge difference to what I got out of the trip.

An Interview Experience at Google

Last Thursday, I had the opportunity to go for a series of interviews at the Google Singapore office. Based on what I understand online, most positions involve at least a few rounds of interviews, usually conducted in one day. Mine had three rounds, and all of them were done over video conference.

As a company that hires for culture, there was only so much reading that I could do. I had applied to be a Field Technician at Beijing and knew that I would be tested more on my problem solving skills than on what I know. As such I decided to spend the night before the interview scanning through my RSS feeds to warm up the neurons in different parts of my brain. Ok, I don’t have any scientific basis for whether that actually fires up neurons in different parts of the brain, but since my RSS feeds covers a broad spectrum of topics from tech to current affairs, it should be a good range.

I started the morning of the interview day with breakfast at McDonalds near a subway station that my dad dropped me off at. This gave me plenty of time to be mentally prepared and get into the zone. Upon arriving at the lobby, I was directed by the receptionist to get myself registered at a computer terminal. The Google lobby was a little quiet, but I assume that was because it was around 11am and most people were probably in their offices. My host came along shortly and ushered me into one of many meeting rooms set up with video conferencing facilities.

The system was probably running a custom Linux distro, and my host set up the VC system which interfaced with Google Plus. This was my first experience of a Hangout, and it was quite a positive experience! While I couldn’t make out the video resolution, the audio and video was definitely smooth for all three interviews. The whole setup definitely had an engineering edge with custom software and commodity hardware (logitech webcam, Audio-Technica mics). I was thankful that none of my interviewers gave me any nasty questions, a la the blender question.

Here are some rough recalls of the questions I got. Definitely a lot more interesting than some other interviews I’ve had!

  • Given the scenario that Google has just acquired a small tech company of about 25 staff running a platform, e.g. Novell, on a network protocol, e.g. IPX, with a directory service, e.g. NDS that you are completely unfamiliar with, how would you get this team integrated with the rest of the company’s infrastructure while allowing them to stay on their platform?
  • Let’s say that Larry wants to make a company-wide live video broadcast in about a month on every employee’s computer (~20k). How would you set this up?
  • Imagine that you get an email from an employee from Thailand, in Thai, and upon putting the email through Google Translate, you understand that the user speaks no English, and that the message reads “wireless broken”. How would you support this user?
  • How would you respond to an employee who insists that he wants an upgrade to the new Macbook Air even though he just got a Macbook Pro and company policy states that each machine is to be used for x years?
  • How would you design a fire escape plan to ensure that everyone is out of a burning building?