How to Recover your Architecture after Drift and Erosion To effectively guide the evolution of a software system and ensure its long-term stability and maintainability, it’s crucial to understand the phenomena of architectural drift and erosion.
Strategies for Managing Architectural Technical Debt that DON’T Work The most significant relief from performance issues and costly technical liabilities comes from resolving architectural technical debt. This blog post delves into the best strategies to achieve that.
Understanding Architectural Technical Debt While most resources and tools today focus on code-level technical debt, it is Architectural Technical Debt (ATD) that incurs the highest "interest rates" and imposes the most significant constraints on the evolution of a software system.
The Rise of Modern Software Architects The Software Architect role is undergoing foundational changes and significant evolution. In this article, we dive deep into the common misconceptions surrounding this role and illuminate the shifting dynamics that are shaping the future of modern software architecture.
System Design and Software Design in Distributed Systems System Design and Software Design are often used interchangeably. This blog post shares how we define them and use them in the context of building distributed systems.
Six Modern Software Architecture Styles Leveraging tried-and-tested solutions saves time, ensures reliability, and helps avoid common pitfalls. We look at six common architectural styles used in distributed systems and talk about how to choose the best one for your use case.
Developer Onboarding Documentation Must-Haves A full list of all the technical documentation a newly hired engineer will need to ramp up and become productive.
Improving Developer Onboarding: Best Practices Onboarding a new developer is a pivotal moment. It can be the catalyst for a developer's success or the precursor to their departure. In this article we discuss the best practices for an effective and successful onboarding.
Sitting at the Intersection of Multiple Tech Trends Multiple tech trends are creating the optimal conditions for another massive shift in how we build and consume software products.
Things About Whiteboards I Won’t Miss Whiteboards have their uses but unless you have a diagram that’s accurate, interactive, and connected to your code and platform, you’ll still encounter issues with information gaps and misunderstandings.