InfoQ Homepage QCon Software Development Conference Content on InfoQ
-
Orchestrating Resilience Building Modern Asynchronous Systems
In this article, we will discuss what problems we had to solve at Twilio to efficiently build a resilient and scalable asynchronous system to handle a complex workflow and the advantages we got from adopting a Workflow Orchestration solution, including abstracting away state management and out-of-the-box support for retries, observability, and audibility.
-
The Incident Lifecycle: How a Culture of Resilience Can Help You Accomplish Your Goals
Don’t get stuck with overwhelmed systems that can cause an outage, like what happened with Taylor Swift concert tickets. Build organizational resilience to incidents through improved coordination and communication during the response, and blameless reviews, root cause analysis, and insightful communication afterward to enable meaningful change.
-
Tips on How Staff Engineers Can Impact Incidents
Staff engineers can influence behaviors during and after incidents by modeling transparency and questioning assumptions to strengthen engineering culture. As incident commanders, they can coordinate workstreams, communicate with stakeholders, and prevent responder burnout. In retrospectives, staff engineers can improve model root cause analysis to improve underlying cultural issues.
-
Write More, Talk Less: Building Organizational Resilience through Documentation and InnerSource
Better documentation and knowledge sharing creates transparency that aids onboarding, prevents turnover disruption, and withstands reorganizations. Different practices can help, such as communicating asynchronously, creating incentives for documentation, making docs discoverable, understanding team members' preferences, and providing dedicated writing time. And maybe InnerSource can help too.
-
Agile Rehab: Replacing Process Dogma with Engineering to Achieve True Agility
Struggling with your "agile transformation?" Is your scaling framework not providing the outcomes you hoped for? In this article, we’ll discuss how teams in a large enterprise replaced heavy agile processes with Conway’s Law and better engineering to migrate from quarterly to daily value delivery to the end users.
-
Bridging Silos and Overcoming Collaboration Antipatterns in Multidisciplinary Organisations
There's a worrying trend towards focusing on specialisms at the expense of collaboration, shared responsibility and valuable outcomes, which can take teams away from multi-disciplinary collaboration. This article calls out three collaboration anti-patterns that appeared in more than one organisation, some of the symptoms they cause and some thoughts on how to go about counteracting them.
-
Why Developers and Staff+ Engineers Should Get Involved in Open-Source Collaborative Development
Over the last 30 years, the world has become connected and digital. Open source is how we do modern software development, stitching together downloaded open-source libraries, frameworks, and other code to create new applications or functionality. This is why every developer and senior staff+ roles need to know what open source is and how it works.
-
Evolving the Federated GraphQL Platform at Netflix
This article describes the journey of the migration towards a Federated GraphQL architecture. Specifically, it shows the GraphQL platform Netflix has built consisting of the Domain Graph Services framework for implementing GraphQL services in Java using Spring Boot and graphql-java, and tools for schema development. It also describes how the ecosystem has evolved at various stages of adoption.
-
Engineering as Art: Embracing Creativity beyond Science
Achieving a staff+ engineering role is a considerable achievement that many engineers seek as the next step in their career growth. In this article, we’ll discuss the challenges that staff+ engineers can face and how our struggles are similar to those of artists. Specifically, we’ll look at the parallels between creating art, creating software, and dealing with organizational dynamics.
-
IDEA: a Framework for Nurturing a Culture of Continuous Experimentation
For a team to be agile, they need a culture that allows them to learn, unlearn, and relearn. This article explains how teams can foster such a culture, navigate through the complexities of modern development environments and harness agility to deliver software quickly that fits the needs of users and business sponsors. It describes a framework to explore, plan, implement and evaluate ideas.
-
Adaptive, Socio-Technical Systems with Architecture for Flow: Wardley Maps, DDD, and Team Topologies
Designing for adaptability sounds easier than done. How do you design and build systems that can evolve and thrive in the face of constant change? This article provides a high-level introduction to combining Wardley Mapping, Domain-Driven Design (DDD), and Team Topologies to design and build adaptive, socio-technical systems optimized for a fast flow of change.
-
Debugging outside Your Comfort Zone: Diving beneath a Trusted Abstraction
This article takes a deep dive through a complex outage in the main database cluster of a payments company. We’ll focus on the aftermath of the incident - the process of understanding what went wrong, recreating the outage in a test cluster, and coming up with a way to stop it from happening again, and dive deep into the internals of Postgres, and learn about how it stores data on disk.