Apr
28
3:25pm
Agile Talks #40: Applying Design Principles to Microservices
By Mozaic Works
Design, SOLID, OOP, Unix, Microservices. All in one talk brought to us by Alexandru Bolboabca.
1. "Applying Design Principles to Microservices" by Alexandru Bolboaca
"When designing code, we use specific design principles: SOLID, GRASP, or the UNIX philosophy. Do these still apply to microservices?
In this talk, we will explore these sets of design principles and the effects they have when applied to microservices. Specifically, we will look at obtaining:
- low coupling
- high cohesion
- Single Responsibility Principle
- Open Closed Principle
- Encapsulation
- Alan Kay’s original vision for OOP and how it applies to microservices
- the UNIX idea of small programs with a single goal that communicate through text interfaces
We will see how from these principles we can learn interesting things:
- how most programming languages are using class-oriented
programming rather than object-oriented programming
- how microservices follow Alan Kay’s vision of objects that respond to
messages
- why low coupling is necessary when dealing with a large number of
microservices, if we want to optimize for change
- how microservices can and should take advantage of Conway’s law
- how encapsulation means that each microservice should have its own
database
- finally, how all these lead to a system that has eventual consistency due to the CAP theorem"
About Alexandru:
"Alex is a polyglot programmer, trainer and coach at Mozaic Works. He has worked for almost 20 years in software development, for various industries and in various European countries and UK.
He has been involved in large projects in many industries, including banking, energy, telecommunications, media planning, printing, pharma, eHealth. From practical experience, he also advises and teaches on topics such as architecting microservices, agile architecture, usable software design, evolutionary design, crafting code, clean code and refactoring legacy code with focus on design."
We'll see each other online as we did the last time. We'll come back soon with the link.
Agenda:
18:50-19:10: Welcome & Intro
19:10- 19:50 Talk
19:50- 20:05 Q&A
20:05- 20:10 Closing
See you soon!
Register at https://www.meetup.com/The-Bucharest-Agile-Software-Meetup-Group/events/270021119/
hosted by

Mozaic Works
share