Software Engineer at Facebook
- Brighton, United Kingdom
- Computer Software
Jim Purbrick's Overview
- Software Engineer at Facebook
Jim Purbrick's Summary
Dr Jim Purbrick has over a decade of experience building complex, large scale software systems and world class software engineering teams. At Nottingham University he worked on the MASSIVE-3 virtual environment system and Prix Ars Electronica-winning mixed-reality games with IGDA award winners, Blast Theory. In industry Jim designed online games at Codemasters, developed networking and load balancing technology for Warhammer Online, and worked on scripting and networking technology for Second Life while setting up Linden Lab Brighton. Jim helped CCP design and build the CREST RESTful web API used to connect the PC online game EVE online with the PS3 console game Dust 514 and now works in Facebook's new engineering team in London.
Jim Purbrick's Experience
Public Company; 5001-10,000 employees; FB; Internet industry
January 2013 – Present (1 year 10 months) London, United Kingdom
Privately Held; Myself Only; Computer Software industry
October 2010 – December 2012 (2 years 3 months) Brighton, United Kingdom
Privately Held; 201-500 employees; Computer Games industry
November 2005 – October 2010 (5 years)
Founded Linden Lab Brighton. Built multiple world class software engineering teams. Built processes and tools for and drove the adoption of Scrum and automated testing across the company. Lead projects to migrate the Second Life server software to a more scalable, RESTful web service based infrastructure which pioneered the use of the Django web framework which has since been used across Linden Lab. Lead the development of the Second Life scripting platform and APIs. Integrating the Mono open source .NET runtime in to Second Life as a next generation scripting engine and developed unique micro-threading technology that allows 1000s of independent scripts to run on Mono in a single process. Presented this work at ooPSLA and EuroFoo keynotes and to the Microsoft CLR team at the Lang.NET conference in redmond.
Lead Server Engineer
Privately Held; 51-200 employees; Computer Games industry
October 2002 – November 2004 (2 years 2 months)
Responsible for all network and server architecture for the Warhammer Online Massively Multiplayer Roleplaying Game (MMORPG). Included everything from UDP based networking to seamless, scalable server clustering and load balancing. Included team leadership responsibilities.
Mobile Networked Games Development
Educational Institution; 10,001+ employees; Research industry
April 2002 – October 2002 (7 months)
Developed wireless mobile gaming protocol over UDP used on the Prix Ars Electronica winning and BAFTA nominated "Can You See Me Now?" and "Uncle Roy All Around You" games.
Privately Held; 501-1000 employees; Computer Games industry
October 2001 – April 2002 (7 months)
Designed economic, character progression, combat and player versus player systems for Dragon Empires Massively Multiplayer Online Role Playing Game (MMORPG).
Jim Purbrick's Projects
Jim Purbrick's Publications
Authors: Jim Purbrick, Mark Lentczner
- OOPSLA '07: Companion to the 22nd ACM SIGPLAN conference on Object-oriented programming systems and applications companion
- October 2007
Second Life is a large, on-line virtual world where avatars dance, fly, buy virtual clothing, play games, have meetings...and program. About 256k residents of Second Life write code that runs 24/7 in over 2M simulated objects in a continuous 3D landscape twice the size of Montréal.
This giant, collaborative development environment is run on a large grid of over 12k CPUs in a grid of "simulators" that run the land of Second Life. The simulators have an integral virtual machine for the scripting language people use. Despite the inherit difficulties, the system demonstrably does enough right to enable development of a huge amount of content in Second Life.
As the virtual world grows, we have been evolving its infrastructure for programming in several ways. Integration of the Mono virtual machine presented a huge set of challenges but offers major advantages as Second Life grows. We have also had to architect and extend in light of the fact that Second Life is a continuously running system on which over a million people rely.
Finally, apart from the language and run-time environment, Second Life also presents a social environment in which to program collaboratively. Within Linden Lab, we have pioneered the use of Second Life as an integral part of our development methodology even when working on the underlying code of Second Life itself. These experiences point toward a re-imagining of programming as a globally immersive collaborative experience.
Authors: Jim Purbrick, Chris Greenhalgh
- Presence: Teleoperators and Virtual Environments - special issue: IEEE virtual reality 2002 conference
- February 2003
Many VR platforms emphasize extensibility to support as wide a range of applications as possible. The current trend is to move this extensibility to lower levels of the system to support extensibility of infrastructure mechanisms such as networking protocols. This kind of extensibility allows the runtime of the virtual environment system to evolve even while the system is running. This paper presents a new virtual environment platform that allows multiple infrastructure mechanisms to be added to and coexist within the running system, with different elements of the virtual world using different mechanisms. This allows the virtual environment system to efficiently support a wider range of applications by, for example, having only certain virtual objects use conservative consistency and persistence. It can also optimize the performance of the CVE by tailoring the infrastructure mechanisms according to the different roles played by different objects in the virtual environment.
Authors: Jim Purbrick
- Computer Music Journal , Volume 24 Issue 1
- April 2000
Authors: Jim Purbrick
- PhD Thesis, University Of Nottingham
This thesis presents a framework for continuously available persistent collaborative virtual environments which is fundamentally more flexible than current approaches. Whereas existing systems allow the artefacts in the environment and the application behaviours of those artefacts to be changed at run time, they still need to be shut down if the infrastructure mechanisms of the system need to be changed. The framework presented by this thesis pushes run-time extensibility to a lower level allowing previously static infrastructure mechanisms and application level behaviours to be replaced and extended in a uniform way.
Jim Purbrick's Skills & Expertise
- HTML 5
- Agile Methodologies
- Continuous Integration
- Virtual Worlds
- Web Services
- Test Driven Development
- Web Applications
- Software Engineering
- Visual Studio
- Game Development
- Software Development
- Open Source
- Mobile Devices
- Video Games
- Distributed Systems
Jim Purbrick's Education
PhD, Computer Science
October 1998 – June 2001
Research in to continuously available virtual environments. Published papers in ACM Multimedia, ACM CHI and IEEE Virtual Reality conferences. Published papers in MIT Presence and MIT Computer Music journals.
Activities and Societies: University Big Band
BSc (First Class Hons), Computer Science
1995 – 1998
In addition to university study developed Warlock, a Java Applet based web game subsequently purchased by Games Workshop, and Junction25, a map editor for DMA’s Grand Theft Auto game which provided Direct3D experience, featured in PC Zone magazine (issue 66) and was downloaded over a quarter of a million times.
Activities and Societies: Hugh Steward Hall Computer Commitee
Jim Purbrick's Additional Information
Contact Jim for:
- career opportunities
- consulting offers
- new ventures
- expertise requests
- business deals
- reference requests
- getting back in touch
View Jim Purbrick’s full profile to...
- See who you and Jim Purbrick know in common
- Get introduced to Jim Purbrick
- Contact Jim Purbrick directly