Work Experience

Waymo LLC

(May 2016—present) Waymo, formerly known as the Google self-driving car project, is a standalone company that was spun off from Google Inc. on January 1st, 2017 and has been a subsidiary of Alphabet Inc. like Google and DeepMind since then. I’m a member of the Vision/Perception team and working on vision-based detection and classification for self-driving cars using various machine learning techniques, such as convolutional neural network (CNN), recurrent neural network (RNN), and so on.

Google Inc.

(May. 2015—Aug. 2015) Like the previous year, I worked as a software engineering intern in the Google Maps team at Google Inc., Mountain View. My intern host was Brett Allen, and we did research on removing shadows from building textures for Google Maps. We adopted an optimization-based approach similar to [Kwatra et al. 2012]. In brief, we first estimate an illumination image by minimizing our data term, which consists of multiple aerial images captured at different times of the day, with total variation regularization. Once we get the estimation of the illumination, we can remove shadows from the target texture by subtracting the illumination values from the texture when both are in log space.

  • Images
short_building_1.gif short_building_3.gif

Google Inc.

(May. 2014—Aug. 2014) I worked as a software engineering intern in the Google Maps team at Google Inc., Mountain View. My intern host was Mark Duchaineau, and we conducted a research project on detecting reflective surfaces in cities, e.g., windows, using multiview aerial images. We first classify the surfaces by utilizing the differences between diffuse and specular reflections, and rendered dynamic reflections in them using environment mapping.

  • Images

Google Inc.

(May. 2013—Aug. 2013) I worked as a software engineering intern in the Personalization and Recommendation team at Google Research, Mountain View. My intern host was John Anderson, and we devel- oped a visualization system for high-dimensional datasets. To display the high-dimensional dataset in 3D effectively, we explored various dimensionality reductions including varimax- rotated PCA and t-SNE [van der Maaten and Hinton 2008]. I built the back end by gluing my Python scripting system to Google’s HTTP server using SWIG, because it allowed users to test their own dimensionality reduction codes interactively, and we wrote the front end in JavaScript with three.js to render the 3D visualization using WebGL.

Nexon Corp.


(Sep. 2006—Apr. 2009) I worked as a software engineer at Nexon Corp., one of the world's largest online PC game company, for two and a half years. My work spanned all tiers of MapleStory®1 — a very popular, two-dimensional side-scrolling MMORPG — including developing a game client, a server, and even administrating databases. Specifically, I developed a graphics rendering engine, user interfaces, networking, and designed game logic and database schema. MapleStory has a combined total of over 100 million subscribers worldwide (2006), and holds South Korea's top concurrent player record with 626,852 players (2011).

  • Developed a game client in C++ using Microsoft DirectX.
  • Developed an IOCP based, highly-concurrent game server.
  • Managed large-scale databases using Transact-SQL.

MapleStory 2 (Project MS2)

  • Developed a new 3D MMORPG using Unreal® EngineTM 2.52.

Cybermed Inc.

(Jan. 2006—Sep. 2006) I worked as a software engineer at Cybermed Inc., software and hardware company mainly focused on 3D medical imaging technology and optical image guided surgical system. One of the programs I designed and implemented was an X-ray simulation module. This module constructs a three-dimensional volumetric model of the human body from CT (Computed Tomography) data in DICOM format. Then, with the model, the module generates a variety of virtual X-ray images from any user-defined perspective, such as lateral and posteroanterior (PA) cephalometric radiographs, using ray casting [2,1].

  • Developed a 3D medical image processing software for diagnosis.
  • Developed Accurex (now OnDemand3DTM3), a 3D dental implant planning software.

X-Ray Simulation

Generate X-Ray View with OnDemand3DTM. OnDemand3DTM is capable of generating a virtual x-ray image (Cephalometric and PA image) from CT data.


X-Ray image generated from Cone Beam CT by using OnDemand3DTM

1. Muniyandi, M., Cotin, S., Srinivasan, M., and Dawson, S. 2003. Real-time PC based X-ray simulation for interventional radiology training. Stud Health Technol Inform 94, 233-239.
2. Watanabe, Y. 1999. Derivation of linear attenuation coefficients from ct numbers for low-energy photons. Physics in Medicine and Biology 44, 9, 2201.