Skip to content

Sponsor: Do you build complex software systems? See how NServiceBus makes it easier to design, build, and manage software systems that use message queues to achieve loose coupling. Get started for free.

Learn more about Software Architecture & Design.
Join thousands of developers getting weekly updates to increase your understanding of software architecture and design concepts.


Follow @CodeOpinion

API Error Messages for a GOOD Developer Experience

Debugging and troubleshooting are a big part of a developer’s day-to-day. Because of this, when designing your APIs, provide good API error messages as well as guide developers down a path of success and makes it easier for them to understand issues when they need to troubleshoot. YouTube Check out my YouTube channel, where I post all kinds of content accompanying my posts, including this video showing everything in this post. Meaningful Error Messages When designing an API, it’s important to consider the experience of the developers who will consume it. A well-structured error message can serve as a guiding light, illuminating… Read More »API Error Messages for a GOOD Developer Experience

Web-Queue-Worker Architecture Style for Scaling

Web-Queue-Worker is an excellent architecture pattern you can add to your toolbox. It’s just a pattern and can work with a monolith, modular monolith, microservices, or whatever. It provides many benefits for scaling by moving work into the background and if you have long-running jobs, workflows, or even recurring batch jobs. YouTube Check out my YouTube channel, where I post all kinds of content accompanying my posts, including this video showing everything in this post. Flow Here’s the flow of the Web-Queue-Worker pattern in its simplest form. We have a client make a request to our HTTP API (Web), which generates a… Read More »Web-Queue-Worker Architecture Style for Scaling

Keep your project structure simple!

What should your project structure look like? How should you structure and organize your HTTP APIs? Here’s one way by Jono Williams and my thoughts and insights about some misconceptions about Domain Driven Design. YouTube Check out my YouTube channel, where I post all kinds of content accompanying my posts, including this video showing everything in this post. Typical Structures There are a few common folder structures that people typically use. Probably the most common is organizing by technical concerns. This means grouping files and classes based on their type, such as controllers, services, and models. You’ve likely encountered this if you’ve… Read More »Keep your project structure simple!