The Key to Sane Software Dependencies

Software projects constantly evolve - features are added, bugs are fixed, and improvements are implemented over time. As a consequence, versioning comes into play. This allows us to track changes, understand the scale of modifications between releases, and make informed decisions about when and how to update our dependencies. Unfortunately, not everyone adheres to a standardized versioning scheme. Semantic Versioning (often shortened to SemVer) provides clear guidelines, and neglecting it can lead to a world of headaches in software development....

March 14, 2024

The Waterfall Bottleneck

Agile methodologies have become synonymous with efficient software development, promising responsiveness, adaptability, and a relentless focus on customer value. Yet, a puzzling paradox exists within many organizations. While feature teams often embrace Agile’s flexibility, platform teams - those responsible for the core infrastructure powering the organization’s products—can remain bound to traditional waterfall approaches. This duality creates bottlenecks, stifles innovation, and undermines the very benefits Agile promises. Let’s explore why platform teams trapped in a waterfall mindset are detrimental to any organization striving for digital agility, and more importantly, how to break free from this counterproductive pattern....

March 13, 2024

Forbidden Friday Deployments

In many organizations, the words “deploy on Friday” strike a familiar chord of unease. A lingering tradition from earlier days of software development, the “No Deploy Fridays” rule is often seen as a way to mitigate the risk of breaking critical systems right before the weekend. However, this practice holds organizations back and reveals deeper issues with their software development and deployment processes. The Hidden Costs of “No Deploy Fridays” While the intent to minimize weekend disruptions is understandable, there are significant drawbacks for organizations that forbid Friday deployments:...

March 12, 2024

Freedom to Innovate

The ability of organizations to innovate at speed often determines their success. Engineers sit at the heart of this innovation, but to be effective, they need the right tools and the freedom to use them. This is where the concept of the “platform” becomes essential. A well-designed platform should empower engineers to build and experiment swiftly, unburdened by bureaucratic hurdles or rigid processes. Unfortunately, many platforms can inadvertently turn into roadblocks, stifling innovation rather than fueling it....

March 11, 2024

Building a Culture of Operational Excellence

Many organizations fall into the pattern of relentlessly prioritizing the development of new features. While innovation and pushing the boundaries of your product are essential, there’s a subtle yet impactful distinction to be made. It’s the difference between feature development and the often-overlooked operational work that keeps your product alive and thriving. The Operational Blind Spot Let’s unpack the common mindset: The allure of the new: It’s exciting to focus on flashy additions that promise growth and competitive advantage....

March 8, 2024