Monolith to Micro – The Cautions

This is the first installment in a “Monolith to Micro” series of posts. These posts will follow a typical journey from moving from a monolithic architecture to a microservice-like architecture. In this installment, we will take a look at some of the cautions in this migration that should be taken into consideration. Are Microservices for … Read more

System of Systems

I’ve been watching some of Stefan Tilkov’s talks recently: I have started to like him because he seems to be more grounded in reality than many other speakers. They seem like they are just riding careers of speaking, grabbing the latest buzzwords and running. But Stefan seems like he actually does build software, or at … Read more

When Designing a New System

What kinds of considerations do you take into account when designing a brand new system? Do you just take the current hot buzzword architecture and run with it? Do you exhaustively run through the functional and non-functional requirements (the “ilities”) that are important? Just start banging out code and see what emerges? Growing the System … Read more

Demoralized

Are you demoralized by your legacy system? Why? Is it hard to work with? Slow? Buggy? Big? Hard to understand? Legacy Story At some point, this legacy system was a green field. The developers were eager to work on it, and it used all the best new tools, technologies, architectures, etc. It became successful. It … Read more

Data Store Design

If you work with a traditional legacy system, you likely work with a Relational Database. If you work in a Microservice architectural model, you probably work with a NoSQL Database. At some point you probably work with everything in between too. Why does it seem that microservices lean towards the NoSQL or “schema-less” stores, where … Read more

But Everybody Is Doing It

The common childish response when Mommy or Daddy is denying the child something. “Everybody is doing it” is apparently supposed to be a good enough reason to do it ourselves. However, children are not the only ones that employ this reasoning. For example, just because “everybody is doing” microservices doesn’t mean that is a good … Read more

Architecture Decision Records

We all know that architects need to make decisions. These decisions have lasting impacts, and can be in various states, such as new, in force, obsolete, etc. How do you record these decisions, and keep those records up to date? I recently read through this blog post: http://thinkrelevance.com/blog/2011/11/15/documenting-architecture-decisions which describes what looks to me to … Read more