(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.
(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.
(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.
(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.
(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.
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