R
rubengonzalez's photo
Ruben Gonzalez
From Spain 03:48 PM (GMT+02:00)
$70,000/yr

Active 1 hour ago


Member since Sep 2026

Share this profile:

Technical lead in Unity3D and .NET

Game Developer
Available for hire
Years of experience
20+ years
Experience level
Lead
Available for
Full-time
Available from
01 Oct 2026
Download Resume / CV

Technical lead with 20+ years in Unity3D and .NET, specializing in the architecture other engineers build on top of: dependency-injection frameworks, real-time networking (SignalR, WebSockets, Photon), UI tooling (data-binding and layout systems), and interactive test infrastructure — all introduced iteratively alongside existing code rather than as rewrites. Six years leading both the client architecture and the real-time backend of a VR platform, on top of over a decade building VR/XR products end-to-end.

Mentoring is part of how I work: I introduced structured PR reviews and ran regular “code show-and-tell” sessions at ENGAGE to spread knowledge across the team, on top of internal training on async/await, Git, and SOLID principles wherever I go.

I also championed the team’s shift to AI-assisted development, starting with GitHub Copilot and later moving the team onto Claude Code.

Currently available for remote full-time roles — also set up to invoice as a registered self-employed contractor in Spain, for employers without a local entity.

Employment History

Technical Lead Unity3D Developer at ENGAGE XR 2020 - 2026
As Technical Lead, I owned the architecture of ENGAGE’s Unity VR client and founded its real-time backend service, working across the full stack — from low-level infrastructure and networking to the tooling other engineers built on top of. Over six years, I led the major refactors, rewrites, and technical decisions that shaped how the codebase evolved as the team and platform grew. Designed a dependency-injection container and module/extension-point system for the Unity codebase, introduced iteratively into an existing six-year-old codebase rather than as a rewrite — new features adopted it directly while legacy code kept working unchanged, letting the team migrate at its own pace. Since adopted by every feature team: 822 files inject through it, and 31 of 70 feature modules were built by six other engineers plugging into it independently. Founding backend engineer on a real-time VR session service: designed and built a SignalR/WebSockets backend from its first commit (2023) through final development in 2026, including a custom Roslyn source generator that auto-produces strongly-typed client SDKs from server contracts. Led several large-scale refactors across the Unity client and .NET backend: splitting one monolithic session interface into 14+ focused, testable pieces across 650+ files; refactoring the VR grab/manipulation system (97 files); and replacing ENGAGE’s entire bespoke VR input rig with Unity’s XR Interaction Toolkit (364 files — the largest single change in the project’s history) while holding input parity across Oculus, SteamVR and OpenXR runtimes. Diagnosed a production concurrency livelock in session-join logic: shipped an exponential-backoff mitigation first, then eliminated the race entirely by rewriting the join as a single atomic Redis Lua transaction, removing the retry loop altogether. Built a view/binding framework (auto-managed UI data-binding) and a named-region layout system for placing DI-constructed views without coupling to scene layout — both introduced incrementally alongside the existing scene/prefab code rather than as a rewrite. Adopted independently by five other engineers across 50 files for bindings and nine modules across 64 call sites for regions, including a retrofit of an older effects system onto the pattern a year later. Diagnosed and patched a bug in ASP.NET Core SignalR itself, shipping a custom framework build to unblock production; reported the issue upstream, later acknowledged and fixed in an official release. Built a dependency-injection-aware test harness that spins up a real service container with a UI canvas/prefab rig, enabling interactive editor tests against actual UI windows and prefabs rather than headless assertions alone. Ten test classes inherit from it today; one full suite was written entirely by two other engineers with no involvement from me, and the pattern was independently forked into a separate module’s own test folder. Rewrote ENGAGE’s native Android soft-keyboard handling (706 lines) through Java reflection against Android’s WindowManager/EditText APIs, since Unity exposes no direct binding to them, fixing a white-screen bug where the keyboard broke over the app’s WebView-based UI. Also built a Gradle build hook resolving an IL2CPP packaging conflict that blocked Play Store submission, and patched the Android release process (permissions, app ID) for a Meta Quest for Business store submission.
Senior Unity3D and .NET Developer at Virtualware 2007 - 2020
Senior developer and part of the technical management team; lead of product development including VirtualRehab, Viroo and VirtualClinic. Lead IT and DevOps developer, managing infrastructure, licensing, and CI/CD across the company. Development of Unity3D applications for PC, VR, Android and iOS, and .NET applications using WPF and/or ASP.NET Core. Guiding, helping and training junior developers.

Education

Bachelor in Computer Sciences at University of Deusto 1998 - 2003