Web Services: ReST, load
balancing, caching, MySQL Cluster, monitoring / automated scaling , SSL,
OAuth, Common J2EE Web Service Frameworks (Spring, Jersey, JAXB, …)
Took lead position as pioneer on
an ambitious, new online product suite from the ground up which includes
public-facing web services that support hundreds of thousands of
concurrent players
Wrote job listings for new role
requirements in the company and designed external and onsite testing
procedures for the position
Administered tech screens,
interviews, and graded tests assigning candidate grade and decided next
course of action in hiring decision process
Directly managed team of three
programmers and indirectly managed parts of development performed by
several other programmers
Researched many technologies,
vendors, and middleware making decisions on what satisfies quality
standards and deliverable timeline while staying within budgeting
constraints
Defined product framework,
coding guidelines, and easy-to-follow new hire “getting started” steps
Managed backlog, critical paths,
and milestone planning for the product working directly with the publisher
on many fronts
Performed feature planning and
wrote complex technical designs for features, as well as, for our broad
new infrastructure including web services, backend databases, various
tools, automation, monitoring
Researched popular cloud
application hosting options, made vendor choice decision, and integrated
our web application stack and database backend into the hosting framework
which included building scripts to support automated scalability
Wrote significant portions of
code for our product suite and was primary coder on many milestone
deliverable features in Java
Designed and implemented UE3
integration for new online services in C++ and UnrealScript
Served as system admin and
database admin for many servers including MySQL master/slave and Apache
Tomcat web services
Defined deployment and
maintenance strategies, including support for both patch and patch-less
updating of our product in the live environment while minimizing
disruption for our active player base
Designed and maintained load
testing plans using JMeter to simulate thousands of users with expected
API usage patterns and collect performance metrics used to fine-tune
performance and meet our total concurrent user targets
Senior Software Engineer
Aliens: Colonial Marines
Designed plan and integrated our
UI framework into a new UE3-based code base provided by a 3rd
party
Quickly got HUD and UI elements
working for other programmers, designers, and artists to take over and
polish to completion
Designed UI splitscreen support
and integration with other UE3 systems
Lobby Screen: setup and
implemented support for complex matchmaking lobby screen
Loadouts Screen: championed
premier in-game screen by working closely with Art Directory to ensure
player experience was optimal when customizing characters, weapons, and
accessories
oEliminated need for render target in
Loadouts screen which was used to render full-screen, full-resolution
Marines/Xenos with full animation support which gave us a solution that saved
over 5MB video memory allowing us to ship a high quality feature that fit
within our budgets without watering the feature down
oImplemented support for map-specfic
environment, lighting, camera and focus object placement so that our designers
had the ability to theme the screen based on whatever map the player was on
oDesigned/Implemented data-driven
system for creating custom weapon customization animations, lighting, and
attachments within the Loadouts weapon customization screen
Online:
oAdded support for Steamworks platform
to engine, including utilizing all online features Steam offers
oImplemented PSN online support for PS3 which included
utilizing matchmaking and title storage services
Section 8: Prejudice
Designed, setup, and implemented
a new core framework to be used by all of our in-game UI controls
Designed new UI pipeline and
supporting technology to empower artists to do more on their own which
resulted in higher quality UI in and subsequently freed up a lot of
programming time for other agendas
Implemented supporting systems
to enable us to port nearly all of our pre-existing S8 UE3-based UI
components into the new Scaleform-based UI system and was primarily
responsible doing all of the associated port work
Designed and implemented HUD
framework including an installable, data-driven system for various
component visibility rules that can be reused across all UI components
Managed and implemented all new
HUD features which tied directly into complex gameplay components and
other UE3 systems such as Audio engine, Overlay FX, and game state systems
Mentored several new hires, both
artists and programmers and helped bring them up-to-speed on our rapidly
evolving UI technology and pipelines
Optimized the HUD systems to
reach our performance budgets
Implemented various UI-related
memory optimizations
Assisted in implementation of
new game modes and provided ongoing support
Designed, implemented, and
managed a new trial game mode to work on both PS3 and 360 platforms which
gave players access to the full game for a limited amount of time and
included various exploit protection mechanisms
Technology
Scaleform:
◦Researched technology, summarizing
pros/cons of choosing to license this technology for our UE3 products
◦Integrated technology into a separate
branch and setup proof of concept screen example with technical documentation
and development environment details
◦Prepared pitch and presented to
studio head giving my decision and supporting reasons which was then approved
in the budget
Code review software:
◦Researched, reviewed and contrasted
pros/cons for three popular code review software suites
◦Setup staging environment as proof of
concept
◦Prepared pitch and presented which
option was best which the company then agreed and decided to license
◦Lead the integration of the
technology into our live developer environment while disrupting developers as
minimally as possible
◦Managed and maintained software
maintenance and triaged issues, working closely with the product support team
in order to track status and reach satisfactory resolution
Assisted with various build
system additions and improvements
Section 8
Quickly ramped up on the
technology and was a big contributor in bringing the project to shipping
quality on PC and 360 on schedule
Rewrote a buggy and
poor-performing AI A* path-planning system in order to satisfy design and
art demands while minimizing risk and meeting tight deadlines
Championed the Xbox Demo which
included branch setup, implementing supporting features, and maintaining
ongoing integrations
Split off into a side team in
order to bring S8 to an additional platform (PS3) in just a few short
months
Pitched a new feature idea for
Sixaxis dropping support utilizing tilt sensor which was approved and was
the primary coder behind the implementation
Designed and managed a trial
version of the game for PS3 distributed through the PSN store with
full-game unlocking capability
Designed, proposed, and was
primary coder in the implementation of a new robust AI system based on
Jeff Orkin's GOAP design which streamlined AI development and dramatically
cleaned up interactions between the AI system and other engine/game
systems resulting in more modular/reusable code
Designed and implemented several
new game systems: weapon system (both player and AI use), sensor data,
inventory system, particle system controller
Setup, maintained, and managed
large branch integrations to facilitate easy merges into live branch
without causing instability
Worked closely with design and
art on new gameplay features: player abilities, characters, AI, particle
FX, and animation
Designed and implemented a new
build system from the ground up which supported continuous integration and
was primarily built utilizing Hudson (open source) and implementing a
data-driven, flexible backend primarily written in Perl
Enhanced and implemented new
usability features for various game tools used by other departments
Participated in the design and
planning of other systems: in-game cinematics, effects, animation
keyframes
Provided a large amount of
hands-on coding for the project which was primarily done using C++
Created and maintained technical
design document for the project
Identified and mitigated risks
early to avoid unexpected time sinks as much as possible
Created and maintained backlog
for programming department and identified cross-department dependencies
Maintained relationship with 3rd
party engine developer for code drops, support, and long-term planning of
the project
Planned, managed, and integrated
engine drops from multiple code bases
Planned and scheduled tasks for
the entire programming team to enable the team to meet tight short-term
deadlines while still making progress on the critical paths to our
long-term goals
Responsible for assisting with
other department planning and overall project planning to meet very strict
deadlines and keep publisher happy
Planned and coordinated production
environment changes to better meet project needs
F.E.A.R. Files and F.E.A.R. Perseus
Mandate
Planned, setup, and maintained
production environment to support developing for PC, Xbox 360 and PS3
simultaneously which was used successfully in order to ship the studio’s
first ever console title
Maintained complex integrations
between diverse code bases due to unusual relationship with technology
developed externally
Managed and integrated engine
drops from multiple 3rd party resources
Designed and implemented nearly
all new gameplay systems and features for the products
Managed and prioritized issues
for the programming team to efficiently make deadlines
Consistently identified time
sinks, re-factored iteration objectives, and helped keep programming team
on track during the course of development
Designed multi-platform build
management system extensions to support engine toolset for producing
working builds of different types and intelligent error/warning reporting
Mentored and trained new
programming staff
Software Engineer
F.E.A.R. Extraction Point
Wore many hats as the sole
programmer on a team size of 20 for the majority of the product’s
life-cycle
Implemented new weapons,
characters, and other gameplay features which included a laser carbine weapon
that could draw on walls by programmatically constructing a decal mesh
based on player input and various state information while still supporting
the art department’s gradual fading material applied to the dynamically
generated mesh
Created and maintained
technical, usage, and design documents for various aspects of development
Improved Lithtech toolset by
fixing bugs and adding new functionality
Extended and maintained
TimeGate’s internal development tool suite, which includes: Bugzilla
modifications, build management system design and maintenance, and
advanced scripts that interface with Perforce
Designed the localization
pipeline and managed content for ten locales which involved designing
importation process of translated materials, process automation tools, and
ensuring release candidate builds were fully localized and ready on time
Implemented and maintained the
game’s InstallShield installers for all locales
Designed and implemented system
for evaluating level performance and identifying “hotspots” in the levels
which was later expanded on and partially automated
Worked directly with art and
design departments plan and execute required level optimizations
Learned new languages,
technologies, and concepts quickly while still utilizing these newly acquired
skills to meet tight deliverable deadlines
Earned PC Gamer's “Expansion of
the Year” Award which featured the laser carbine weapon on the magazine
cover that I designed and implemented all support for