Published Sep 3, 2019

SE-Radio Episode 339: Jafar Soltani on Continuous Delivery for Multiplayer Games.mp3

Join Jafar Soltani from Rare as he delves into continuous delivery for AAA multiplayer games, tackling testing challenges, the shift to trunk-based development, and optimizing delivery pipelines for quality assurance and reduced crunch time.
Episode Highlights
Software Engineering Radio - the podcast for professional software developers logo

Popular Clips

Episode Highlights

  • Implementation

    discusses the transition from traditional development models to continuous delivery in gaming, highlighting the challenges faced during implementation. He notes that a common misconception is that continuous delivery isn't valuable for games released every few years, but this approach enhances maintainability and reduces technical debt 1. Implementing continuous delivery required a cultural shift, convincing developers to write tests and adopt incremental development 2. Soltani emphasizes the rewarding nature of seeing changes impact players quickly, stating,

    Once you work this way and you can see that you can make a change, be able to give it to the players within a day or two at most. That's very rewarding.

    ---

    This shift has led to a more sustainable work environment, reducing the need for crunch time 2.

       

    Certification

    The certification process for releasing games on platforms like Xbox is crucial for ensuring quality but can be time-consuming. explains that through collaboration with platform holders, they streamlined the process, allowing for faster releases while maintaining quality standards 3. By using telemetry to monitor game performance, they can bypass some certification steps, expediting the release process 3. Soltani highlights the importance of minimizing download sizes for players, utilizing tools that only update changed data, thus enhancing the user experience 4. He states,

    We constantly work on to make sure what we are releasing, what we are giving to our players, is absolutely the minimum that they need.

    ---

    This approach ensures that players receive updates efficiently without excessive bandwidth use.

       

    Optimization

    Optimizing the continuous delivery pipeline is essential for efficient game updates and patches. describes how combining asset and code pipelines into a single deployment pipeline improves overall efficiency 5. By treating all components as one pipeline, they can optimize the cycle time, reducing the time from change initiation to player release 5. Soltani notes the unique challenges in game development, where assets like art and audio make up the majority of the project size, requiring careful management to ensure smooth updates 6. He explains,

    The main challenge is the client and the server, especially the client side, because still with the server, as you mentioned, the server is in the cloud, so we can deploy server however many times we want.

    ---

    This focus on optimization helps maintain a seamless experience for players.

Related Episodes