This resume was last updated on August 15th, 2008.
Wei-Hwa Huang
weihwa.public@gmail.com
- Home
-
293B Orchard Ave.
Mountain View, CA 94043 USA
Phone number available upon request
Home Page: http://www.ofb.net/~whuang/
This resume's URL: http://www.ofb.net/~whuang/resume.html
Objective/Overview
I'm not looking for a job at the moment. My interests are in games and puzzles, both the design and implementation.
I have certain background in web technologies, having worked at Google as a software engineer for six years, and
would be interested in doing more work to bring games and puzzles to a wider on-line audience.
Unpaid Experience
- Race for the Galaxy
Graphic design work, prototyping, and game-design consulting on this strategy card game, working
under acclaimed game designer Thomas Lehmann. Created first draft of icon-based cards in an attempt
to make game accessible to a wider audience. Created simulator for calculation of solitaire-rules
game balance. Copy-edited several revisions of cards and rules. Communicated with actual-game
graphic designer regarding small but important game design details.
- Helping to organize International Puzzle Party 29,
held some time in 2009 in the Bay Area. Currently helping with computer-related work, including
setting up MediaWiki on a dedicated server.
- Various volunteer and planning work in the Bay Area Game community.
- The Locked House of Dr. Matrix (unpublished)
A puzzle hunt of 27 puzzles created for the Gathering for Gardner 8
conference, created in honor of Martin Gardner.
- 2007 Philadelphia Inquirer Sudoku National Championship
Created all the Sudoku puzzles used in the first-ever live U.S.-wide Sudoku competition.
- Googol Conglomerate
On a team of 7 organizers that ran a weekend-long puzzle hunt held in the Bay Area the weekend of
June 9-10, 2007. 240 puzzle-solvers in teams of 12
attacked a large collection of more than 40 complicated puzzles, which involved tasks as
diverse as playing a pinball machine with custom software modded to encode a secret message,
decoding a mathematical equation by looking for numbers in a ball pit, and trying to solve
impossible trivia questions where the answer is secretly hidden in the Google Ad results.
- Regular volunteer for the California Extreme Classic
Arcade Games Show, including setup of various machines.
Paid Experience
-
Software Engineer and Puzzle Designer, June 2002 - July 2008
Google, Mountain View CA
Various responsibilities while working in different sections of the company.
- OpenSocial Gadget: WoShamBo
Created WoShamBo,
a sample interactive game gadget that demonstrates how to use the OpenSocial API for game development.
- Puzzles for "Engineer Appreciation Day"
Created and edited a collection of engineer-oriented puzzles for an event on Google campus. These puzzles
were interesting, with an intended solution, but often very open-ended with room for more exploration, which
might include programming expertise.
- Google Games
Led the puzzle design team that provided puzzle challenges for Google Games, a "soft recruiting" event where
recruiters went on college campuses and had schools compete against each other in fun mini-events.
- iGoogle, Gadgets, Google App Engine
The Da Vinci Code Quest gadget turned into Wei-Hwa's Puzzles, a "puzzle-of-the-week" gadget. It was updated weekly until December 2006
and sporadically since then. Several Javascript APIs were added to Google Gadgets as a result of the puzzle
gadget. The gadgets were ported to Google App Engine and
became open-source in 2008, with some new server-side updates.
- The Da Vinci Code Quest on Google
Working on a small team with members from Corporate Marketing and Product Marketing
to build a cross-promotion with Google products and Sony Pictures' movie The Da Vinci Code.
Serving as both engineering work and puzzle design; writing generators for puzzles.
- AdSpam Team
Worked on various techniques used to combat Click fraud
on Google Ad properties. Details and numbers cannot be divulged here.
- Unicode Cleanup
During 2004, cleaned up an ugly bit of Unicode code in Google UTF-8 infrastructure, speeding up
document retrieval by about 1%.
- CJK Spell Checker
Helped with the creation of the Japanese and Chinese versions of the Google spell checker.
Various tasks, including using an early version of MapReduce.
Named on U.S. patent application #20050289463 as a result of this work.
- Quality Evaluation
Became an expert on the Google logs systems
and created log results for analysis by the rest of the team. Also built a tool that
calulated different metrics on a fixed set of queries, and graphs these metrics for
quick visual analysis. Porting several circa-2002 Google technologies to
2003 tools. Created and maintained anonymized user session-based data from
May 2003 to October 2004.
- Search Term Operators
Worked on an early version of the % (near) operator in Google Search, reviewed the .. (numrange) operator,
and did most of the work on the binary - (optional concatenation) operator. Several other conceptual
demos of search functionality that never made it to live production.
-
Senior Member of Technical Staff, February 2000 - February 2002
ARMILLAIRE Technologies, Bethesda MD
ARBROS Communications, Silver Spring MD
Designed and developed Java-based HTTP Web Manager for the Armillaire-2000(TM)
Switch, an advanced packet-based switching system that
provides Voice Telephony and ANSI/ITU-T SS7 Signaling over ATM.
Responsible for the design and development of the Web-based GUI for OAM&P.
Designed and tested XML-based prototypes of Armillaire-2000 configuration utilities. Designed Service Feature Server for VoIP prototype. Designed XML interface for ISM module for Armillaire-5000(TM) Switch.
Responsibilities include:
- Design and development of GUI prototypes
- Design and partial development of Provisioning Servlet/Applet system
- Design and development of Alarm Management system
- Internationalization of GUI
- Migration of switch configuration to XML-based design
- Team design of potential Voice over IP (VoIP) network
- Support as needed
GUI development skills include:
- Java Servlet programming
- Applet programming; use of Swing libraries
- Applet/Servlet Tunnelling
- JNI (Java Native Interface)
- JSP (Java Server Pages)
- Installation and maintenance of Java Web Server 2.0 on Solaris and NT systems
Other skills include:
- Writing test plans and supporting System Integration
- Refining User Documentation
- Member of ISO-9001 Tiger Team
- Coordination of Company Picnic
-
Government Contractor, October 1998 - February 2000
DynCorp, Reston VA
GTE Information Systems LLC, Chantilly VA
GTE Government Systems, Chantilly VA
Worked on the JSAN (Joint Staff Automation for the Nineties) contract
as part of the Joint Staff Integration Lab, servicing
the Joint Chiefs of Staff of the United States of America. Projects include:
- Designing, testing, and deployment of WWW browsers across the entire Joint
Staff in order to meet Y2K-compliance deadlines. Skills used include creation
of package with Microsoft's IEAK and deployment with SMS 1.2 Server.
- Rewriting Appointment Calendar generation program used by the Office
of the Chairman. Skills used include VBA development, support and documentation writing.
-
Government Contractor, September 1996 - September 1997
GTE Government Systems Corporation, Chantilly VA
Contracted for the Defense Technical
Information Center (branch of the Department of Defense); programmed
perl CGI scripts and some Microsoft Word Basic macros to generate
DefenseLINK News Release WWW pages. Included administration
of News Release database.
-
Summer Student, Summer of 1993
Institute for Defense Analyses:
Supercomputing
Research Center, Bowie MD
Generalized and solved a theoretical parallel networking problem
utilizing C programming and linear algebra.
Part-Time Experience
-
Author, March 2008 - current
Sterling Publishing
Currently working on a sudoku variant book, "Mutant Sudoku", with co-author Thomas Snyder.
Expected publication date in early 2009.
- Puzzle Challenge Author, Winter 2001
Binary Arts, Alexandria VA
Created puzzle challenges for product
Metro.
Selection of "40 Beginner-to-Expert Challenges."
-
Puzzle-Generation Software Author, Winter 2000
Dell Magazines, New York NY
Created software, using Visual C++, that generated Number Place
puzzles (a numerical logic puzzle) suitable for publication.
-
Puzzle Checker, ongoing
Sterling Publishing, New York NY
Checked drafts of books for errors in preparation for publication;
solved all puzzles and verified that solutions were unique (about 5%
of puzzles were flawed and were revised before publication). I've done so
for about 5 books so far.
-
Part-time puzzle designer, February 1997 - Fall 1998
Smart Games,
Incorporated , Salem MA
Software game company. Designed and created strategy-based levels
for SmartGames Stratajams and SmartGames Puzzle
Challenge #2.
-
Editor, January 1994 - November 1995
Caltech campus newspaper The California Tech
Elected and paid position; in charge of layout and design of paper;
editing, public relations, and personnel management.
Education
Selected Honors & Awards
More should go here, but I'm too lazy to update.
Credentials
Computer Skills
Currently programming in:
- Javascript (AJAX)
- Python
- Perl
Highly fluent in these languages:
- C
- C++
- Pascal
- LISP
- Visual Basic (especially VBA)
- HTML
- XML
- TeX (LaTeX and AMS-TeX)
- Java
- BASIC
Inexperienced but knowledgable in:
- VC++
- Tcl/Tk
- LOGO
- Assembly
- SQL
Operating systems:
- Unix (many flavors)
- DOS
- MacOS
- NetWare
- Windows 95/98
- Windows NT 4.0
Software Libraries/Systems:
- OpenGL
- Open Inventor
- C++ Standard Template Library
- Java Swing
- Java Servlets
Application Software:
- Adobe Photoshop
- Adobe Premiere
- Adobe Pagemaker
- Adobe Illustrator
- Macromedia Freehand
- Microsoft Excel
- Microsoft Project
- Microsoft Word
- and others
Coursework
On-the-job Courses
- Multiple Microsoft Solution Developer courses
- Novell network administration
Undergraduate Coursework
- Discrete Mathematics and Computation
- Distributed and Parallel Programming
- Computer Graphics
- Basic Electronics
- Algorithms and Design
- Computational Methods
Other Skills and Interests
- Fluent in American English and Mandarin Chinese; can read Japanese
- Puzzles and games, including
- mechanical puzzles
- crossword
puzzles
- board games
- card games
- desktop publishing and graphic design
- pinball
- human language translation
- typeface design and graphics
- MIDI sequencing
- anime