NETWORK GAME PROGRAMMER!
Double Fine Productions is currently looking for a highly experienced, professional Network Game Programmer for its San Francisco development studio. The primary job responsibilities are to architect the companys next-generation networking infrastructure, define programming policies and guidelines for the creation of networking-compatible software, and develop a networking system for online play.
The ideal candidate has a minimum of 5 years experience in games programming, with at least 1 published console or PC networking title. Published games should reflect experience with PS2, Xbox, Gamecube and/or PC development (familiarity with Xenon is a plus), and reflect extensive hands-on experience in the role of a senior networking programmer. The role demands extensive knowledge of networking application development and an avid interest in keeping up with technical advances in this field. Double Fine is seeking someone who is looking to expand their current job responsibilities and tackle unique and creative online multiplayer experience challenges. Since new intellectual property is involved, there is a need for original and forward thinking with respect to the needs of the game design. The ideal candidate has a strong preference for working in a highly creative, innovative, small, intimate development environment.
Responsibilities:
1) Develop a networking system to be compatible with all features of a shared game framework, including abstracting online service user interface APIs.
2) Establish network-programming conventions to assist other programmers in creating networking-compatible software.
3) Author and maintain technical and software design documentation.
4) Implement network-synchronized game code, interfacing with all project subsystems including enemy behaviors, player interaction and character control, simulation, graphics and high-level game logic.
5) Develop and maintain software to aid testing of networked games, including harnesses for deterministic replay, bandwidth analysis, simulation of latency, and packet loss.
6) Work with external vendors to develop solutions using and/or extending their online service SDKs, including, but not limited to, Xbox Live.
Requirements:
1) Minimum of a Bachelors degree in Computer Science or Engineering, or equivalent industry experience.
2) Minimum of 5 years of programming experience, with demonstrated experience in network programming on at least one shipped networking title, including Xbox Live, Sony PS2, or PC.
3) Broad knowledge of the networking design space, from replicated input to distributed simulation with synchronization and prediction.
4) A solid understanding of design tradeoffs, including bandwidth usage, latency tolerance, simulation fidelity, testability, security, and game logic complexity; desire and ability to balance these tradeoffs to meet game and engine design goals.
5) Ability to design hack- and exploit-resistant network protocols.
6) Understanding of consumer networking technology
7) Interest in mentoring other members of the programming team in networking software development.
8) Fluency with C/C++, and excellent C/C++ programming skills
9) Demonstrated knowledge of good software engineering practices.
10) Strong verbal and written communication skills
11) Ability to proffer reasonable time estimates for scheduled tasks, and to work within a schedule
12) Self-motivated, with a strong work ethic.
13) Demonstrated ability to write flexible, extendable code for iterative design prototyping.
Pluses:
1) Avid gamer with a passion for creating top-quality games, particularly multiplayer online games