Back to Swarm Blog
I've learned several valuable lessons that I now apply in my Product and Engineering philosophy as I build Swarm’s backend.
Observing the struggles and shortcomings of major game studios has been eye-opening: large game development studios with massive budgets were once expected to release high-quality, extremely polished $60 game experiences (these days it’s $70).
Studios like Bungie, Blizzard, and Bethesda among others, once known for their iconic franchises, have recently encountered significant issues.
Bungie faced financial challenges and delays in their anticipated releases, bleeding money and cost-cutting while delaying their next 2 big releases: Destiny 2, The Final Shape, and their new title codenamed Marathon.
Blizzard’s Diablo 4 initially launched with great reception, only for players to encounter very problematic issues with its end-game.
Bethesda's Starfield didn't meet expectations, launching to a lukewarm reception and trying to do damage control on Steam. They even walked away from this year’s The Game Awards with nothing.
These observations have offered me a unique perspective on the complexities and challenges of developing large-scale software projects, such as video games.
The intricacies of organizing large teams and the technical demands of game development are significantly different from typical client-server or background processing tasks.
In my work, I've incorporated lessons from my love for video games and observations from the situation of video game developers I follow into my product and engineering philosophy.
My approach to coding Swarm's backend, for example, was influenced by my frustrations with Bungie's content delivery and Blizzard's client-server interactions.
My decision-making process in technical and product areas is also shaped by these observations, particularly how these studios handle their resources and experience in game development.
These insights have been crucial for me and are valuable for any product and engineering team.
Watching once-respected studios face these issues has been a learning experience, emphasizing the importance of adaptability, efficient resource management, and the need for a deep understanding of customer needs in any software development project.
The gaming community was shaken by Bungie Studios's recent layoffs and cost-cutting measures, stemming from the financial underperformance of Destiny 2 and the delay of their latest major release.
As someone who has played Destiny 2 for almost 4000 hours, one of the reasons I dropped the game after almost a decade of playing the franchise is because they shifted their content to be designed around pushing their engagement metrics up as much as possible.
Right now, the game feels like a tedious chore to play rather than an experience you can enjoy. The game feels like it is trying to squeeze you for every second of engagement that it can, rather than providing an experience you actively choose to stick with. Fear-of-missing-out (FOMO) mechanics have burned out a lot of players such as myself.
Another notable case is CD Projekt Red's Cyberpunk 2077, initially anticipated as a standout title in 2020. However, it turned out to be a technical nightmare with several expected features missing from the release.
The disastrous launch of Cyberpunk 2077 can be attributed, in part, to the third-party QA team hired by the developer for testing. Instead of aiding CD Projekt Red in delivering a high-quality product by identifying critical issues, the third-party contractor established quotas for their quality assurance (QA) team, encouraging them to report trivial, non-essential problems to meet their target metrics.
Consequently, CD Projekt Red's development team found themselves overwhelmed, prioritizing minor issues over critical aspects of the game that needed attention. The game's quality deteriorated to the point that Sony removed the PS4 version from the Playstation Store.
In the realm of video game development, metrics should revolve around the core product or service with careful consideration of contextual factors. While objectivity through metrics is crucial, when a team starts prioritizing metrics for the sake of pushing numbers up or down, they risk falling into the trap of working "in service of a number."
Actions are no longer driven by what makes sense for the core product or service; instead, they are dictated by the fear that numbers might decrease. In the case of Destiny 2, dedicated players walked away because the focus shifted to elevating player engagement metrics rather than creating content that players would genuinely enjoy.
Similarly, Cyberpunk 2077's highly anticipated launch turned into a prolonged disappointment, requiring months of patches to bring the game to a playable state. The overemphasis on meeting number quotas in quality assurance led to critical issues being overlooked and left unaddressed.
Diablo 4 initially received praise, but as players delved into the more challenging content, their enthusiasm turned into frustration.
The disconnect between Diablo 4's art and dungeon designers, and those responsible for gameplay and mechanics, became glaringly evident. The assets created failed to seamlessly integrate with the gameplay, particularly in higher difficulty levels where the pace and intensity increased.
Players faced swifter action, contending with enemies boasting greater health and damage. Failure to evade telegraphed abilities marked on the ground often resulted in instant death. Unfortunately, many telegraphs were indiscernible against the environmental color palette.
These issues, coupled with peculiar design and technical decisions, compelled the development team to rethink their roadmap to address player concerns.
Blizzard's misalignment extended beyond the game mechanics. The marketing messages contradicted the development team's stance on player advantages.
Despite the Diablo 4 developers explicitly stating no plans to sell in-game advantages, Blizzard's marketing team conducted surveys gauging players' willingness to pay for such advantages.
This discrepancy fueled speculation that the development team was not being completely honest, especially given Blizzard's track record of aggressive monetization.
Even within Blizzard's internal teams, a lack of cohesion was apparent before the infamous season 1 patch for Diablo 4. The development team, operating at a rapid pace, promised a substantial upcoming patch to address issues.
However, shortly after its release, players collectively discovered that the patch made the game feel worse to play. The development team had inadvertently slowed down the game, implementing changes to character movement speed without a clear justification.
Good leadership involves proactively identifying silos in the design and development process.
While some silos can be resolved through improved internal communication and collaboration, persistent ones can lead to process deadlocks, unchangeable critical production code, impossible commitments, or conflicting key performance indicators (KPIs).
Leaders must ensure teams work in harmony, with clearly defined goals regularly tested against shared objectives to align tasks with the organization's overall mission.
Bungie crafted the architecture, processes, and tooling for Destiny 2 with a focus on delivering content every 14 weeks, establishing a predictable release cadence.
However, this approach, while providing predictability, led to inflexibility in their process. The consequences became evident this year as Bungie fell short of revenue targets, faced delays in a major release expected to generate substantial income, and underwent significant layoffs.
Their rigid process hindered their ability to quickly generate new content, exacerbating their financial challenges.
The world around us is not in a state of inertia. User sentiments, demands, and external factors evolve unpredictably, so it's essential to design with adaptability in mind.
Assume tomorrow will bring change, and build systems accordingly. Code should be platform-agnostic, avoiding tight coupling with specific cloud providers.
Robust system architecture enables clean module isolation, reducing the impact of sudden changes. Maintain abstraction between in-house systems and third-party services.
Decouple product and engineering processes from revenue strategy to adapt to the company's current reality and prepare for worst-case scenarios independently.
Originally conceived as a live-service game like Destiny 2, it pivoted away from this model midway through development, resulting in a rushed release with technical and visual issues.
It launched as a complete technical and visual mess. The gameplay and story presentation also felt lacking in quality compared to Arkane’s usual work.
The game's deviation from its original direction, combined with a high attrition rate of around 70% of the original development team members leaving before the game was launched, led to a scandalous and poorly-received launch.
Reusability is commendable, but it must be approached judiciously. Forcing modules or packages beyond their intended use or limitations invites problems over time.
Teams may build on unstable foundations, leading to collapses. Unmaintainable hacks become necessary, complicating operations.
Starting afresh when introducing new concepts, upgrading to newer versions, or making significant pivots is preferable.
Building from scratch aligns the module with the current problem, pays off technical debt immediately, and results in more specific documentation tailored to the challenge at hand. The short-term investment in resources pays dividends in the long run.
Let me preface by saying that if you think Starfield is a good game, you are entitled to your own opinion even though your opinion is objectively wrong and maybe you need to play a good RPG like Baldur’s Gate 3 or Octopath Traveller to understand what a “good” RPG is.
Starfield, anticipated as one of the decade's most promising RPGs, received a lukewarm reception and reviews. The puzzling aspect is why it feels remarkably similar to Bethesda's previous titles.
If you've played a substantial selection of Bethesda games such as Elder Scrolls 3: Morrowind, Elder Scrolls 4: Oblivion, Elder Scrolls 5: Skyrim, Fallout 3, Fallout: New Vegas, and Fallout 4, you'll notice that Starfield essentially follows the same formula.
Despite the leap in graphical fidelity from Morrowind in 2002 to Starfield in 2023, the core mechanics of Starfield remain strikingly similar to those of its predecessors.
The overarching plot theme, featuring an unlikely hero saving the world, has persisted for almost two decades.
The excessive reliance on loading screens, reminiscent of an earlier era, has become a source of mockery among players, leading to jibes that Starfield is a loading screen simulator. In contrast, other games, such as God of War: Ragnarok, have innovated in presenting loading screens.
The NPC AI in Elder Scrolls 4: Oblivion surpasses the realism found in Starfield. The game's much-anticipated release failed to live up to the hype, leaving players disappointed.
Speculation abounds regarding whether Bethesda struggles to produce genuinely innovative content or consciously chooses not to.
Some attribute this to the limitations of the Creation Engine, which has seemingly resulted in Bethesda releasing virtually the same game for the past 21 years.
A member of the company has publicly come out to defend their work behind the excuse that “video game development is hard”. Modders, however, contend that Starfield's state is not an engine problem but rather a result of developers running out of time.
Regardless of the true reasons, while other entities are progressing and innovating, Bethesda seems stuck in a cycle of repetition.
Capcom, for instance, has provided Resident Evil series remasters via the RE engine, delivering superb horror survival gameplay without compromising graphical fidelity.
Sony and its first-party studios are pushing the boundaries of video game-centric hardware architecture with the PS5.
Valve introduced the Steam Deck, bringing PC gaming to the handheld space, initiating an arms race that ASUS responded to with the ROG Ally.
Certain aspects of technical development and process management are undoubtedly challenging, but the key distinction lies between acknowledging the difficulty and seeking ways to make it easier.
A comparison between NPC animations in Larian Studio’s Baldur’s Gate 3 and Starfield, released eight years after Fallout 4, illustrates that solutions exist for complex problems when time and effort are devoted to addressing them.
When resources are finite and competition for space and attention is fierce, stagnancy equals irrelevancy, and irrelevancy leads to decline.
There is inherent value in dedicating time and resources to finding ways to improve and innovate.
Volition Games initially aimed to bring the story and theme of the beloved second installment closer to the reboot of the Saints Row video game.
The end result, however, was a game whose story and gameplay is something completely unrecognizable, bore little resemblance to the original Saints Row in terms of gameplay, and deviated significantly from the modern Saints Row in its storytelling.
Instead, players received a lackluster and nonsensical open-world RPG, plagued by its fair share of technical issues.
Reports suggest that Deep Silver, the studio's publisher, imposed changes on the game that clashed with Volition's vision, leading to scope-creep and high turnovers as the team struggled to incorporate mandated alterations.
The unfortunate casualty in this debacle was Volition itself, which ultimately shut down after the release of the Saints Row reboot.
On a brighter note, standout games like Elden Ring, Baldur’s Gate 3, Resident Evil 4: Remake, and Final Fantasy XVI, despite their imperfections, are all very good games that I would highly recommend to anyone.
Baldur’s Gate 3, for instance, is still melting my CPU because of optimization issues, and Final Fantasy XVI could benefit from improved itemization and console performance (the PS5 is not a true 4K machine despite marketing claims).
These games excel because their developers prioritize the overall experience. By focusing on the right elements, teams can let the work organize itself, and success tends to follow naturally.
Losing sight of the original problem your product aims to solve is a common pitfall, particularly when organizational voices prioritize individual success or steer towards trends for quick wins.
Forgetting the initial problem statement diverts energy, resources, and focus from solving the core issue that led to your company's inception or, to put it bluntly, takes resources away from the very problem that secured your company's funding in the first place.
I hope that these insights, which is my way of coping with my frustrations with the industry, help you avoid similar pitfalls in your product and engineering work.
Bungie may not be able to save Destiny 2, but if I have to watch my once favorite game fall into obscurity, at least I can help keep members of our community from making the same mistakes.