Job Summary:
Zwift is a company focused on providing a smooth gaming experience for its customers across various platforms. The Senior Software Engineer, Game Systems role involves owning core game systems and collaborating with cross-functional teams to improve application performance and ensure compatibility across devices.
Responsibilities:
• Design and implement game engine features and systems in C++ for all Zwift platforms (iOS, Windows, Android, Mac, Apple TV), ensuring optimal performance and maintainability.
• Collaborate with cross-functional teams, including game engineers, backend engineers, product managers, game artists, and UX designers to design, plan, test, and deliver high-quality features.
• Drive in-depth performance analysis, profiling, and optimization across all platforms to deliver improvements in CPU utilization, memory usage and budgeting, and startup times.
• Build tools and frameworks to improve development workflows and empower other other engineers.
• Debug and resolve complex issues across a diverse set of devices and platforms, improving reliability and stability.
• Contribute to code reviews, design discussions, and team planning processes.
• Ensure code quality through automated testing (e.g., unit testing, integration testing, and similar).
• Advocate for and implement engineering best practices like automated testing, CI/CD pipelines, and code modularity.
Qualifications:
Required:
• Bachelor's degree in Computer Science, Software Engineering, or similar discipline.
• 7+ years of relevant engineering experience, with 2+ years of experience in game graphics and/or game engine development.
• Strong expertise in C++ development, including best practices for high-performance applications, debugging, and performance analysis.
• Experience designing, implementing, optimizing, and troubleshooting changes related to game graphics and rendering.
• Experience with shading languages such as GLSL, GLSL ES / ESSL, and MSL.
• Experience with multi-threading, memory management and budgeting, and software design patterns.
• Proven experience delivering production-quality features with appropriate levels of testing and instrumentation.
• Familiar with Git and version control workflows.
• Experience with Continuous Integration / Continuous Deployment (CI/CD) and automated testing frameworks.
• Strong problem-solving skills and able to work and collaborate effectively in remote, distributed teams.
Preferred:
• Experience with game engines (custom/proprietary preferred, Unity, Unreal) and their integration with native platforms.
• Strong 3D math and algebra skills.
• Familiarity with real-time networking and multiplayer game systems.
• Experience in experimentation and feature flag systems (e.g. Amplitude, Optimizely, Firebase, or similar).
• Solid understanding of Android app architecture, the JNI, and native-to-Java bridging.
• Interest in building solutions that support our engaged Zwift Community of cyclists, runners, and fitness enthusiasts.
Company:
Zwift operates an online fitness platform used to transform monotonous solo indoor cycling into dynamic and social adventures. Founded in 2014, the company is headquartered in Long Beach, USA, with a team of 501-1000 employees. The company is currently Late Stage.