Margaret Tsai

Margaret Tsai

Generalist Programmer at Ubisoft

Senior Generalist Programme / 18 yrs

Quebec, Canada

Hire Me
Shipped Games:
Wipeout 2 (Behaviour) [3DS]
Rango: The Game (Behaviour) [PS3, X360]
MySims Sky Heroes (A2M) [Wii, PS3, X360]
Dantes Inferno (A2M) [PSP]
SceneIt: Bright Lights and Big Screen (A2M) [Wii]
MySims Racing (A2M) [Wii]
Indiana Jones and the Staff of Kings (A2M) [PS2, Wii]
Microsoft Tinker (Fuel Games) [PC]
Swypeout: Online Battle Racing (Fuel Industries) [PC]
Mission: Paintball (Fuel Industries) [PC]
Super Soaker Water Fight (Fuel Industries) [PC]
Peak Performance Snowboarding (Fuel Industries) [PC]
Work History
  • Generalist Programmer

    Ubisoft

    May 2012 - Present
    Quebec, Quebec, Canada
  • Generalist Programmer

    Ubisoft

    June 2011 - May 2012
    Montreal, Quebec, Canada
  • Game Programmer

    Behaviour Interactive

    January 2010 - June 2011
    Montreal, Quebec, Canada

    • Shipped Wipeout 2 (3DS), Rango (X360, PS3), MySims Sky Heroes (Wii, PS3, X360)
    • Implemented AI using a decision-tree based system.
    • Improved Scaleform pipeline transparency for programmers.
    • Maintain and support tools in Python, C++, and C# for artists and programmers.
    • Integrated support for hard drive caching for the PS3.
    • Improved pipeline and support for creation of new projects on the XBox 360

  • Engine Programmer

    Artificial Mind and Movement

    August 2008 - January 2010

    • Shipped Dantes Inferno (PSP), Scene-It: Bright Lights and Big Screen (Wii), MySims Racing
    (Wii), and Indiana Jones and the Staff of Kings (PS2, Wii
    • Developed, maintained, and supported many modules of the game engine as a generalist
    programmer, including but not limited to audio, graphics, and input, for multiple platforms
    (Wii, PS2, PSP).
    • Integrated support for Scaleform into the engine to support usage of Flash-based UI.
    • Maintain and support tools in Python for artists and programmers.

  • Game Developer

    Fuel Industries

    May 2006 - August 2008
    Ottawa, Ontario, Canada

    • Developed an in-house engine using C++ for an isometric puzzle game.
    • Developed several in-house tools in C#, including a source control check-in assistant and
    asset pipeline integration applications.
    • Implemented a hardware bridge in C++ to integrate a physical card reader into Swypeout,
    seamlessly integrating real world trading cards into online game content.
    • Implemented known encryption algorithms to improve security for communication of game
    data with databases and game servers

    PC Games shipped:
    • Microsoft Tinker as Technical Lead (In-house engine, C++)
    • Swypeout: Online Battle Racing (Torque Game Engine, C++)
    • Super Soaker Water Fight (Virtools)
    • Peak Performance Snowboarding (Virtools)
    • Mission: Paintball (Torque Game Engine, C++)

  • Human Cannonball (Software Developer)

    Net Integration Technologies Inc.

    May 2005 - August 2005
  • Human Cannonball (Software Developer)

    Net Integration Technologies Inc.

    September 2004 - December 2004
Education
  • Bachelor of Math in Computer Science

    University of Waterloo

    2001 - 2006