There is nothing fundamentally wrong with a monolith, and a well-architected monolith with well-structured code with separation of concerns serves its purpose quite well. If Amazon Prime’s experience proves anything, it is that when the granularity of services is too fine, complexity and costs skyrocket.
One size does not fit all: neither cloud nor on-prem
Anchoring your architecture to having some servers running 24/7 is not how things are done in the cloud.
Comparing AWS SQS, SNS, and Kinesis: A Technical Breakdown for Enterprise Developers
Queuing is a critical component of software architecture, and choosing the right system for your cloud-native enterprise application is crucial. In this blog post, we'll compare Amazon Simple Queue Service(SQS), Amazon Simple Notification Service (SNS), and Amazon Kinesis, exploring their strengths and weaknesses to help you determine which queuing system is best suited for your use case.
Why you should question the “database per service” pattern
I am not a fan of the database per service model. The correct pattern for the database model in a cloud-native environment is a data abstraction layer that hides the underlying database mechanics while allowing for transactions that span multiple services. The services should not know the architecture of the database, nor should they orchestrate their transactions.
Ultimately, you must know your project, your needs, yourself, your skills, and your team. Only you are responsible for your project. So trust your instincts, fellow architect, and don't Shakespearize 🙂
Java is no longer relevant
Though Java was my primary way of earning a living from about 1997 to 2015, it has long outlived the problems it solved. Java’s issues are being solved now by modern tools like Docker. Except for a few niche use cases, I no longer use Java for my projects.
There is no such thing as one grand unified full-stack programming language
There is no such thing as one grand unified full-stack programming language or a full-stack developer using a single tool. As a SaaS software architect, I certainly do not see some holy grail from my vantage point. We need to use tools that best meet the needs of the task -- and the needs and the skills of developers who use them.
Best practices for building a microservice architecture
I have been building micro-service enterprise applications my entire career - 22 years as of this writing. Over the years, I learned that there is a balance between pure adherence to design patterns and practice.
What does a Chief Software Architect do?
For many years I couldn’t understand what software architects do. Early in my career, I thought they were useless. As a young developer, I felt that I could do the job of a business analyst, software architect, and developer all at the same time. Now, seventeen years into my post-college career I am one myself. I am trying to learn what it means to be a good software architect, and I hope to be one myself.
Architecting API ecosystems: my interview with Anthony Brovchenko of R. Culturi
In May 2017 I gave a talk at TDWI Leadership Summit in Chicago. The general message I was trying to convey was that businesses operate as ecosystems and public API platforms play a crucial role in ecosystem leadership. It is possible today to build a startup with a very negligible up-front investment. This startup can … Continue reading Architecting API ecosystems: my interview with Anthony Brovchenko of R. Culturi
You must be logged in to post a comment.