Upwork is seeking a backend developer to set up a scalable multiplayer server architecture on Microsoft Azure for an Unreal Engine FPS game. The role involves deploying dedicated servers, implementing matchmaking logic, and ensuring auto-scaling capabilities.
We’re building a multiplayer FPS game in Unreal Engine and need a backend developer to set up a lightweight, scalable server architecture on Microsoft Azure. The game is currently working in single-player for practice (host's computer), but now we need the infrastructure to support multiplayer, scaling to many concurrent players. Each multiplayer match is capped at 20 players. If the current match is full, the 21st player should be assigned to a newly spawned game server, and so on. We don’t use a lobby or server browser—players simply click “Join Active Match” and are routed to the next available slot within the match (regardless of game's duration). What We Need You To Build: - Multiplayer Server Deployment A fully working Unreal Engine dedicated server deployed on Azure. Each server hosts one match instance that restarts continuously (e.g., score resets to 0:0). It supports up to 20 concurrent players. - Matchmaking Backend Logic A lightweight backend (REST API or similar) that: 1) Tracks running game servers and their current player count 2) Assigns new players to the next available server with open slots 3) Starts a new server when all are full or when none exist (i.e., the first player connects) - Matchmaking Frontend Logic Logic within the Unreal game to allow the user to interact with matchmaking: 1) Simple matchmaking UI 2) "Join game" button for example - Auto-Scaling Server Lifecycle Configure Azure (via VM Scale Sets, AKS, or similar) to: 1) Launch new server instances as needed 2) Automatically shut down servers that have no players after a brief inactivity timeout - Player Join API An API endpoint (e.g., GET /join-game) that the game client or launcher can call to receive connection info (IP and port) for the server it should join. - Documentation & Verification Step-by-step documentation on: 1) How to deploy a new server build 2) How to monitor and maintain the system 3) How to test or simulate players to verify scaling behavior Ideal Candidate: - Experience with Unreal Engine dedicated server builds - Strong Azure background (VMs, Scale Sets, ACI, or AKS) - Comfortable writing matchmaking APIs (Node.js, Python, or C# is fine) - Bonus: Experience with multiplayer scaling in FPS games Deliverables: - Fully working multiplayer backend with auto-scaling on Azure - Minimal REST API for joining matches - Documentation (deployment + maintenance) - Optional: Logging or monitoring for running servers
Upwork is seeking a backend developer to set up a scalable multiplayer server architecture on Microsoft Azure for an Unreal Engine FPS game. The role involves deploying dedicated servers, implementing matchmaking logic, and ensuring auto-scaling capabilities.