Madison Square Garden Company Logo

Madison Square Garden

San Francisco, California - United States
View all jobs at this company »

Senior Unreal Developer

Description

MSG Ventures is looking for a Multiplayer Software Engineer to play an integral role in researching, developing, prototyping, and performing due diligence on large-scale multiplayer technologies for integration into our game platform for live events. Candidate must have the ability to work alone and in teams, incorporating input from a diverse group to integrate various contributions into custom tools, workflows, and production ready tech demos. Working on a project from conception through execution, this position benefits from a broad range of skills such as backend multiplayer development, AI simulations, tool creation, and hardware integration for our venues.

Specific Functions/Activities Summary 

  • Collaborate closely with the Director Interactive Software to design and create large-scale multiplayer technologies for our venues.
  • Research, communicate technical needs, and support proofs of concepts with various partners and vendors.
  • Collaborate closely with our Interactive Concept Group and other departments to share pipeline innovations and improvements as well as helping to integrate our game platform and tools.
  • Iterate on the integration of large-scale multiplayer components into cohesive tech demos and a unified gaming platform that can scale for live events.
  • Create solutions for scaling networked games through scripted and AI simulations.
  • Explore new platform services such as matchmaking and social features that can power our game platform and implement cross-platform abstractions for third-party online services.
  • Work alongside our Venue Tech, Systems, and DevOps teams to investigate, prototype, and inform server infrastructure and networking changes to support new gameplay features.
  • Collaborate closely with other software teams to inform and create new tools for content creators.
  • Write technical documentation and clearly communicate complex solutions and challenges, even to non-technical staff.
  • Stay current on relevant technology and conduct necessary research, due diligence, prototyping, and testing to assess emerging technology options.
  • Identify areas that require attention and work with the Software project management team to ensure time and resources are properly allocated.

Qualifications 

  • Computer Science BS, MS or PhD degree preferred or equivalent experience
  • 6+ years of professional game engineering or related field experience required
  • Experienced in creating and architecting multiplayer software systems for cloud-based video games and prototyping large scale AI character systems, large environments/worlds, and synchronized movement/animation systems is required
  • Expertise in C# and the Unity game engine required, with additional C++/Unreal Engine experience highly preferred
  • Extensive domain knowledge in video game production pipelines is required
  • 7+ years of experience developing multiplayer networking code with .NET, C# and C++ is required
  • Experience working with backend cloud providers is required (AWS, Azure, Google Cloud)
  • Familiarity with socket I/O and lower level protocols, IPv4/6, TCP, UDP, etc. is required
  • Strong understanding of how to mitigate issues of latency, bandwidth, and state synchronization is required
  • Strong understanding of different networking models, methods and situations for prediction, interpolation is required
  • Excellent communication and team interaction skills is required
  • Self-motivated, with little guidance needed, and an ability to work on multiple projects and prioritize tasks for each in an agile manner
  • Working knowledge of securely integrating and wrapping external APIs is preferred
  • Experience with load balancing or clustering backend systems is a plus
  • Experience creating Software Development Kits is a plus
  • Extensive knowledge of Mobile / AR / VR / XR space is a plus
  • Applicants should provide their own code samples for tools or playable games along with technical design documentation