Lead Engine Architect at Cooliris
San Francisco Bay Area
Lead Engine Architect at Cooliris
San Francisco Bay Area
I'm a programmer focusing on low-level rendering, tools and visual effects, born, raised, and currently working in Silicon Valley, CA, USA. In the past, I've been also been fortunate enough to work in Shanghai, China, Annecy, France, and Singapore but for now, there's no place like home.
Fluent in English and Mandarin, I feel most at home in international airport lounges and have a keen personal interest in the East Asia region, particularly China, Japan, and the DPRK (North Korea). To this end, I'd like to stay in East Asia for several years, getting more experience in the gaming world under my belt as well as improving my language, business, and cultural awareness. My ideal long term goal is to start a technology-related company or be in another capacity able to make a positive impact on people and society here.
real-time rendering, shading techniques, physically-based modelling, low-level optimization, OS and systems programming, cross-cultural management
(Privately Held; 1-10 employees; Internet industry)
July 2008 — Present (5 months)
Changing the way users interact with online media.
(Public Company; 10,001 or more employees; MSFT; Computer Software industry)
March 2008 — July 2008 (5 months)
Worked on features for an enterprise cloud computing platform. Wrote specification and implemented a prototype for a XML-based correctness and performance testing framework using C# and .NET.
(Public Company; 1001-5000 employees; UBI; Computer Games industry)
February 2005 — March 2008 (3 years 2 months)
Lead re-architecture of a existing engine for a new franchise to target the PS3; managing and mentoring a team of local engineers.
PS3-specific engine issues and support for Beowulf.
Graphics and visual effects for Splinter Cell: Double Agent on Xbox 360 and PS3; coding in C++, HLSL/Cg, and UnrealScript. Designed and implemented advanced shader-based material framework allowing artists to create complex lighting/shading models without coding; wrote both runtime and tools code; worked closely with artists and other engineers to identify requirements.
Performed low-level optimizations on particle and math code.
Designed curriculum and conducted training courses for new employees on engineering best practices and methodologies. Represented Ubisoft Shanghai at international conferences in the US and Europe.
(Public Company; 51-200 employees; Computer Games industry)
December 2003 — November 2004 (1 year)
Worked on graphics and visual effects on an unreleased action title for Xbox and PS2 platforms. Duties included writing custom Renderware behaviors and rendering pipelines, including vertex and pixel shaders, and working closely with other programmers, artists, and designers.
Designed and implemented a scriptable and extensible particle system, supporting compound effects such as trails and secondary emitters, worked closely with senior artist to achieve desired effects for gameplay.
Designed, developed, optimized interactive water in game: physical simulation, and rendering (reflection/refraction).
(Privately Held; 11-50 employees; Computer Games industry)
September 2003 — December 2003 (4 months)
Implemented a multipass shader framework and sample shaders built on OpenGL/Cg for a military training simulation. Demonstrated dynamic night vision, heat vision effects, with noise, blooming, etc.
Extended the OpenSceneGraph open source framework to support MPEG playback capabilities in the engine for quick transitions and cutscenes.
(Self-Employed; Myself Only; Computer Games industry)
May 2002 — December 2003 (1 year 8 months)
Writing demo/experimental code under Win32 focusing on hardware shading techniques and physical modeling; sample projects include cloth/fluid simulation, soft shadows, rigid body dynamics, NPR.
Helped review, revise, and edit articles and code for ShaderX 2, a book on advanced shading and GPU techniques.
(Public Company; 501-1000 employees; EPNY; Computer Software industry)
April 2000 — May 2002 (2 years 2 months)
Contributed to multiple tiers of major CRM application (used by 35% of Fortune 100) using C++, SQL, Java. Interfaced extensively with other development groups and product management, QA, and customer support teams.
Owned back-end server-side data storage infrastructure code (an XML-based file system abstraction on top of a database layer) over entire product cycle, handling specification, design, implementation, internationalization, testing correctness/performance, making enhancements as requested by internal and external developers.
Designed and implemented 100% browser-based UI for various parts using DHTML, CSS, Javascript.
(Public Company; 1001-5000 employees; SGI; Computer Hardware industry)
June 1998 — September 1998 (4 months)
Synthesized knowledge of 3-D visualization and color theory to research and implement feature for selecting optimal color maps in the Mineset data mining tool using OpenGL, C++, Java, JNI, Swing.
Analyzed features of other visualization products and made recommendations for future development.
(Educational Institution; 5001-10,000 employees; Higher Education industry)
May 1996 — May 1998 (2 years 1 month)
Helped design and implement secure print accounting infrastructure using server-side C, Perl and csh on Solaris, adopted on a campus-wide basis at Stanford University.
Wrote and maintained internal and external administrative applications for the Residential Education department using Perl, CGI, and SQL, working with many non-technical users to develop specifications and requirements.
(Public Company; 10,001 or more employees; MSFT; Computer Software industry)
June 1997 — September 1997 (4 months)
As part of the Office 2000 team, helped define methods and shared API for efficient and robust encoding of vector graphics in bitmap formats to retain editability. Implemented export/import and internal tools using C++, C.
MS, Computer Science, April 1998 — June 2000
BS, Computer Science, September 1995 — June 1999
Computer graphics, multimedia, animation, Digital photography, video production, PC and console games (especially RPG/RTS/simulation genres), Any type of good food (especially Japanese), International travel, Aviation, Running, swimming, Sci-fi, Anime, China, Japan, North Korea.
ACM, SIGGRAPH, IGDA.