Jim Purbrick

Jim Purbrick

Software Engineer at Facebook

Location
Brighton, United Kingdom
Industry
Computer Software

As a LinkedIn member, you'll join 300 million other professionals who are sharing connections, ideas, and opportunities.

  • See who you and Jim Purbrick know in common
  • Get introduced to Jim Purbrick
  • Contact Jim Purbrick directly

View Jim's full profile

Jim Purbrick's Overview

Current
Past
Education
Connections

500+ connections

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

Software Engineer

Facebook

Public Company; 5001-10,000 employees; FB; Internet industry

January 2013Present (1 year 10 months) London, United Kingdom

Managing Director

18 Dexterity

Privately Held; Myself Only; Computer Software industry

October 2010December 2012 (2 years 3 months) Brighton, United Kingdom

Agile software engineering consultancy providing development and training services using scrum, test driven development and continuous integration processes alongside open source software including html, css, javascript, linux, apache, django, celery, rabbitmq and mysql. Clients include CCP, creators of EVE Online.

Technical Director

Linden Lab

Privately Held; 201-500 employees; Computer Games industry

November 2005October 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.

Director

Digital World Developments

November 2004November 2005 (1 year 1 month)

Digital World Developments provides virtual world design and development services.

Lead Server Engineer

Climax Entertainment

Privately Held; 51-200 employees; Computer Games industry

October 2002November 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

University of Nottingham

Educational Institution; 10,001+ employees; Research industry

April 2002October 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.

Game Designer

Codemasters

Privately Held; 501-1000 employees; Computer Games industry

October 2001April 2002 (7 months)

Designed economic, character progression, combat and player versus player systems for Dragon Empires Massively Multiplayer Online Role Playing Game (MMORPG).

Web Software Development

theBIW.com

October 1999April 2000 (7 months)

Evaluation of DWG and SVG vector graphics format. Development of ActiveX wrapper for DWG viewer which allowed web based persistent annotation of CAD drawings.

Java Applet Development

Visual Technology

April 1999October 1999 (7 months)

Developed Java applets for building and architectural walkthroughs.

Jim Purbrick's Projects

  • Creatarr

    • October 2010 to Present

    A creative, collaborative social game

Jim Purbrick's Publications

  • Second life: the world's biggest programming environment

    • OOPSLA '07: Companion to the 22nd ACM SIGPLAN conference on Object-oriented programming systems and applications companion
    • October 2007
    Authors: Jim Purbrick, Mark Lentczner

    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.

  • An extensible event-based infrastructure for networked virtual worlds

    • Presence: Teleoperators and Virtual Environments - special issue: IEEE virtual reality 2002 conference
    • February 2003
    Authors: Jim Purbrick, Chris Greenhalgh

    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.

  • Automatic Synthesizer Articulation

    • Computer Music Journal , Volume 24 Issue 1
    • April 2000
    Authors: Jim Purbrick
  • Continuously available virtual environments

    • PhD Thesis, University Of Nottingham
    • 2001
    Authors: Jim Purbrick

    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

  1. C++
  2. Python
  3. JavaScript
  4. HTML 5
  5. CSS
  6. REST
  7. TCP/IP
  8. HTTP
  9. Agile Methodologies
  10. TDD
  11. XP
  12. Continuous Integration
  13. Virtual Worlds
  14. Web Services
  15. Test Driven Development
  16. MySQL
  17. Scrum
  18. Web Applications
  19. C#
  20. Git
  21. .NET
  22. Software Engineering
  23. Linux
  24. Visual Studio
  25. Scalability
  26. Game Development
  27. Apache
  28. Software Development
  29. Open Source
  30. Mobile Devices
  31. Video Games
  32. Distributed Systems

View All (32) Skills View Fewer Skills

Jim Purbrick's Education

Nottingham University

PhD, Computer Science

October 1998June 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

Nottingham University

BSc (First Class Hons), Computer Science

19951998

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

Interests:

games, music, technology, web, virtual worlds, simulation, virtual reality, augmented reality, longboarding, snowboarding

Groups and Associations:

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

View Jim's full profile

Viewers of this profile also viewed...