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 🙂
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 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.
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.
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.
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
Evernote had 100 million users as of March 2014. In June 2012 they cited 1.4 million premium subscribers. Evernote Premium costs $45 per year. Businesses can purchase enterprise subscriptions with a different pricing plan, but $45 seems to be the lower number, so let's stick with that. It means that with 1.4 million paid subscribers … Continue reading What can Evernote Teach Us About Enterprise App Architecture