Consequences Of Project Success
Most software engineers really enjoy the building process. They love to create new things – they enjoy the early phases of a project when everything is new, fresh, and exciting. Experienced developers must be equally good at the later phases of a project. Finishing building a project is a rewarding process, yet it is not the end! It brings with it a new phase. A successful project brings its own new challenges.
Reactive Advantages - One Integration
One of the pains of working in a horizontal system is the number of integrations that must occur. Typically, this leads to bloated, fragile, and complex service configurations. There are ways to mitigate this pain (such as Service Discovery), but moving to a reactive architecture prevents this problem in a very different way.
Messaging Conceptual Fundamentals
Message-centric systems are naturally flexible, since they focus on the communication patterns of a system instead of concrete behaviors, they are loosely coupled, and they expose the information needed to trace data flows and replace or enrich behavioral components of the system. Building well-designed message-driven systems requires a strong understanding of general messaging patterns and message types. What are the messaging fundamentals?
Elegant Event Triggers
Often as you are working on a project, you will receive a request that incidentally impacts a large portion of your API. Maybe an email needs to be sent every time a customer takes certain actions. How can you implement this kind of feature without making changes to a large portion of your codebase?