Thomas Bak | Tom Bak

Thomas Bak

http://www.thomasbak.com
tom (AT) thomasbak.com
+66 (0)87 088 1171

SUMMARY OF QUALIFICATIONS

· University of California, Berkeley. BA Computer Science / Cognitive Science Double Major. GPA 3.5
· Professional software developer with 10 years of programming experience on diverse projects, including 7 years of video game experience with numerous published console game titles.
· USA and EU work permissions.

COMPUTER SKILLS

· PlayStation 3, XBOX 360, DS, PC, PlayStation 2, XBOX, GameCube Development
· AI: Individual/Team Behaviors, Decision Making, A* Path Finding, State Machines, Scripting, Animation Systems, Perception, Team Sports
· C, C++, Java, Python, Pascal, Basic, Lisp, Assembly, Prograph
· DirectX, OpenGL, MFC, OWL, Zapp, Seagate Crystal Reports, Borland ReportSmith
· PHP, JavaScript, HTML, XML, ASP, VBScript, Dreamweaver, Photoshop, Illustrator
· MySQL, Microsoft Access, Oracle Server, Gupta SQLBase, Borland dBASE
· Microsoft Visual C++, Borland C++, Watcom C++, Symantec Café
· Windows XP/NT/00/98/95, Windows CE, UNIX, Linux, OS/2, DOS

EXPERIENCE

· Lead Programmer, DiscoPixel, San Francisco, CA
(Current, Since July 07)

  • Conceived original DS game concept and developed a playable prototype. Worked together with a small international team to manage concurrent development of two prototype games and the supporting library. Adapted commercially available level editor to work with the code base.
  • Designed and implemented Nintendo DS game library from scratch. Created and improved modules to handle sprites, animation, memory management, input, infinite backgrounds, particles, audio, menus, fonts and special DS optimizations.
  • Wrote supporting documents for the project: gameplay specs, storyline, art style guide, tech requirements and marketing sheets. Maintained the project schedule.

· AI Programmer, Activision / Treyarch, Santa Monica, CA
(April 05 to October 06)

  • Developed intelligent character behaviors for Call of Duty 3. Improved upon the previous code base: Enemy and environment perception and analysis, goal planning, combat strategy, A* path finding improvements, animation selection / playback. Provided scripting support as needed by the level scripters.
  • Designed and implemented enemy character AI systems for the final boss battles in Ultimate Spiderman. Developed modular AI system to quickly generate unique enemy AI characters with minimal repeated code. Improved on numerous AI systems including decision making, locomotion, path finding, state machines and scripting.
  • Worked closely with animators and level designers in a rapid iterative process to develop unique, engaging and enjoyable battles. Maintained excellent communications with team members throughout development of the project. Stayed in control of all deadlines. Provided extensive documentation through source code comments and online Wiki page updates.
  • Consoles: PlayStation 3, XBOX 360, PlayStation 2, XBOX, GameCube.

· Software Engineer, Visual Concepts, San Rafael, CA
(May 01 to October 04)

  • Developed the following published "ESPN" and "Sega Sports" console video games: ESPN NBA 2K5, ESPN NFL 2K5, ESPN NBA Basketball 2K4, ESPN NFL Football 2K4, NBA 2K3, NFL 2K3, NBA 2K2, NFL 2K2.
  • Led development of the innovative NBA "24/7" game play mode, which has gotten consistently good reviews.
  • Designed and implemented numerous new features and improvements throughout the games, including: "Director" presentation management system (overlays, commentary, synchronized replays, dynamic crowd audio, game flow, music, SFX); AI (player/referee behaviors); full/partial game simulation and statistic generation; player animations; multi-player networking; debugging tools; ESPN presentation elements (in-game reports, daily wrapups); art tweaks; GUI updates; new free throw and kick meters.
  • Consoles: PlayStation 2, XBOX, GameCube. Wrote all game code in C and Windows tools in C++/MFC. Provided ample documentation to aid in future code maintenance.

· Web System Programmer/Administrator, Medical Staffing Services, Carlsbad, CA
(Summer 00 to Summer 01)

  • Personally conceived and implemented an interactive web application for a hospital staffing company to eliminate paperwork. Features include dynamic, database-driven ASP code, session management, administrative tools, and search/sort capabilities.

· Programmer/Analyst, WorldLink Media, San Francisco, CA
(Summer 99, Summer 00)

  • Produced from scratch the travel information web site, "The Adventure of Travel." Updated and fixed the "Expedition Internet" website, which was used by AARP as an interactive internet tutorial.
  • Provided bug fixes for the Windows version of "Interactive Earth" using Prograph. Created Access reports to analyze website feedback responses. Processed website and application image files using Photoshop.

· Research Intern, Lawrence Berkeley Laboratory, Berkeley, CA
(September 99 to March 00)

  • Helped develop a secure network bandwidth reservation system in C++ for Solaris and Linux machines. Responsible for the "restriction point" node classes.

· Programmer/Analyst, ARvee Systems, Bohemia, NY
(June 96 to August 97, Summer 98)

  • Personally designed and implemented a client/server employee and project tracking Windows application with MFC in Visual C++ 5.0, which was then used by almost all employees to help the company accurately bill customers.
  • Created the company web site, incorporating Java applets and frames into the project. Converted an existing SQLBase Windows application to dBASE. Developed a prototype Windows CE golf scorekeeper application. Created integrated ReportSmith and Crystal reports for many of the company's database applications. Prepared presentations for clients interested in company applications. Made numerous improvements and bug-fixes for many other applications.

INDEPENDENT WEB PROJECTS

· DonateBot.com (2008)
Web page and desktop application that harnesses a distributed computing network to automatically donate to charity. Client web applet, desktop application and admin tool written in Java. Web page uses PHP + CSS.
· Charitii.com (2008)
Online word game that donates money to charity for each correct answer. Written using PHP and MySQL. Used Photoshop and Illustrator to process art. Wrote C++ tool to preprocess data.
· Crosschoice.com (2008)
Unique crossword puzzle game. Features special bonuses, safeties and a high score listing. Uses PHP and MySQL.

RELEVANT COMPUTER SCIENCE CLASSES

· CS 39D - Seminar in Computer Science
· CS 61A - The Structure and Interpretation of Computer Programs
· CS 61C - Machine Structures
· CS 150 - Components and Design Techniques for Digital Systems
· CS 162 - Operating Systems and System Programming
· CS 164 - Programming Languages and Compilers
· CS 170 - Efficient Algorithms and Intractable Problems
· CS 182 - The Neural Basis of Thought and Language
· CS 184 - Foundations of Computer Graphics
· CS 188 - Artificial Intelligence

AWARDS

· (1998) UC Berkeley "Honors to Date"
· (1997) AP Scholar With Distinction Designation
· (1996) Outstanding Underclass Computer Scientist SWR Recognition Award.
· (1996) First place in the Suffolk BOCES Technology Share Fair.
· (1996) Second place in the Long Island Computer/Math Fair.
· (1996) Member of the National Honor Society.
· (1995) First place in the Suffolk BOCES Technology Share Fair.

LANGUAGES

Native: English, Danish
Beginner: Thai

Download resume in Microsoft Word format