Johnson Cheng
PDF version
206-529-4846 | johnson.cheng@utoronto.ca | 10832 Forbes Creek Dr. Apt. U-306, Kirkland, WA, 98033
PROFESSIONAL EXPERIENCE
Microsoft Corporation, Redmond, Washington, USA
Software Design Engineer 2, Windows Kernel
Oct 2005 - Present
Owner of ACPI driver, internal AML interpreter, and the ASL compiler
Developer for power management components in Windows Vista, 2008, and Win7
ACPI specification and debugging expert on internal and external triages
Architect of the new server power metering architecture in Windows 7
Creator and maintainer of the cross-team knowledge sharing wiki
Contributor and collaborator of the ACPI 4.0 standard proposal
Speaker and technical expert in industry conferences such as WinHEC and Plugfest
New employee mentor, college intern interviewer
Platform Computing Incorporated, Toronto, Ontario, Canada
Software Developer, LSF development team
Aug 2003 - Sept 2005
Main developer for Platform License Scheduler, a distributed software used by EDA companies to adaptively manage software licenses in clusters
Developer for the Load Sharing Facility (LSF) software, the flagship product that virtualizes and manages heterogeneous server clusters
Project coordinator for collaboration project with partner Macrovision
Trainer for the technical support team and test team
Primary customer contact through beta testing
IBM Software Lab, Toronto, Ontario, Canada
Summer intern, AS/400 Application Development Tools
July 2002 - Sept 2002
Developer for WebSphere AS/400 development tools in Eclipse
Researcher and tutorial creator for a legacy tool migration path to Eclipse
Co-op student, VisualAge for Java Service and Support
Sept 1998 - July 1999
Creator of the internal fix pack upgrade process
Creator of an online parser for legacy internal customer survey reports
SUMMARY OF TECHNICAL SKILLS
Programming Languages
C - Specializes in system-level programming: POSIX (libc), NT, and WIN32
C++ / Java - Application-level experiences with COM+, STL, Eclipse SWT
x86 / x64 asm - Extensive OS-level debugging experiences
ACPI - Extensive ASL experiences, GPE handler, resource descriptors
Python, PHP, javascript - Web programming experiences
Operating Systems
Unix - Slackware administrator, Redhat / Solaris developer, GNU dev tools
Windows NT family - kernel internals, WDM and WDF, user-mode services, PnP, HAL, WMI
Networking
Distributed programming - Experienced in sockets, TCP/IP, RPC, SOAP, XDR
Web programming - servlets, javascript, HTML, CSS, REST methodology
EDUCATION
University of Toronto, Toronto, Ontario, Canada
Bachelor of Applied Science - Computer Engineering
Sept 1999 - May 2003
Design project - Simulation of Application-layer Peer-to-Peer Multicasting
Voted as the graduating engineering class valedictorian
LANGUAGES
English / Mandarin - Native-level fluency
French - Beginner level
Reference available upon request.