Darren Lafreniere

Contact information available on request. Please visit http://lafarren.com/about#contact.

12+ years of professional software development, with expertise in real-time simulations in C++ and experience developing web applications. Worked within small and medium sized teams and helped build several successful commercial products. Able to learn quickly and apply new technologies, research, and algorithms.
C++, C, C#, Java, ActionScript 3, Ruby, PHP, HTML, CSS, JavaScript
Platforms, APIs, and Libraries
DirectX, .NET, Havok, wxWidgets, Flex, Ruby on Rails, jQuery, Unreal Engine, FIX
Microsoft Visual Studio, Eclipse, Git, Subversion, Perforce, Araxis Merge, Adobe Photoshop
2010 - Present Irrational Games/2K Boston, Quincy, MA
Bioshock Infinite
  • Developed a data-driven pattern matching system, which detects the occurrence of in-game event sequences within certain game state contexts. Used for triggering relevant AI speech and awarding achievements.
  • Added an automated pipeline that generates FaceFX animations when new speech sound effects are added to version control.
  • Modified existing sound propagation system. As sublevels are streamed in and out at run-time, the system dynamically generates its connectivity graph.
Sept. 2008 - 2010 Freelance Software Developer, Canton, MA
Irrational Games/2K Boston
  • Developed several C#/.NET and jQuery based plug-ins for the company's internal FogBugz server.
Moonshot Games, LLC.
  • Optimized GameSWF's vector-to-triangle shape tessellation, reducing scene-wide vertex counts by 30% with negligible quality loss.
  • Wrote a first pass texture manager on top of OpenGL.
  • Added SWF and bitmap entity attachments and various editing tool enhancements.
ADB Systems, LLC.
  • Developed MECHfx, a ground-up C++ app, enabling traders to manage and execute forex trades across several broker accounts using the FIX protocol.
  • Extended existing PHP scripts and MySQL database to support MECHfx.
  • Migrated MECHfx to a server-side Java daemon, accessed via a web interface, in order to support customer-tradable accounts.
  • Extended custom WordPress plug-in for easier Q&A administration.
Neoscape, Inc., subcontracted under Weatherfield, LLC.
  • Developed internal Ruby on Rails web app for tracking employee overtime at an architectural firm, using Harvest's REST API.
  • Views were filterable by employee or project, with hours expandable and collapsible by week, client, project, and task.
2002 - Sept. 2008 Irrational Games/2K Boston, Quincy, MA
  • Wrote Bioshock's skeletal animation system. Implemented the run-time animation management layer on top of Havok's core animation library, and worked with animators to establish the content pipeline and to develop tools.
  • Wrote a run-time, blend tree based animation pose system, for generating a character's pose for the current frame. Each node was evaluated via an abstract pose modifier interface, and modified the input pose according to its specialization.
  • Implemented an AI locomotion pose modifier that selected, sequenced, and blended root motion animations in order to fulfill an AI's desired path.
  • Implemented inverse kinematics (IK) pose modifiers for head tracking and for adjusting foot elevation on uneven surfaces.
  • Authored an animation keyword tagging and filtering system. AIs communicated their state to the animation system using keyword and priority pairs, allowing for the selection of state-appropriate animations (aggressive, passive, injured, etc.).
  • Implemented a character animation management system on top of Unreal's core animation engine. The same system animated single player AIs and multiplayer characters.
  • Developed AI collision avoidance, and worked with lead AI programmer on behaviors.
  • Worked with networking lead to implement high-level multiplayer features, such as animation synchronization and door breaching. Led development of cooperative multiplayer.
2000 - 2002 Buzzpad, Inc., Wellesley Hills, MA
  • Employee number six at peer-to-peer networking technology start-up.
  • Wrote a distributed dictionary library for synchronizing multi-user session data.
  • Developed PeerBrowse, a browser plug-in that allowed multiple users to collaborate in real-time within a shared webpage, which was used for online customer service.
  • Wrote various core technologies, tools, and unit tests.
1998 - 2000 Looking Glass Studios, Cambridge, MA
  • Wrote a customizable input mapping library for Thief: The Dark Project, which was later reused in System Shock 2, Thief 2, and Jane's Attack Squadron (JAS).
  • Was a core team member on JAS, a WWII flight simulator.
  • Inherited and maintained the JAS audio system.
  • Authored a dynamic, context-appropriate music system.
  • Implemented various camera modes and targeting logic.
  • Implemented the HUD and PIP rendering manager.
  • Made UI menus and controls functional.
1996 - 1998 University of Hartford, West Hartford, CT
Computer Science