Developing a microservice may look like a simple task. As the name implies, it is a micro service. But that is not necessarily true, as sometimes we tend to complexify something that should be simple.
This does not mean a service should be simple, it can be quite complex. What should be simple is the goal and the properties of the service. There shouldn't be any doubt regarding what it does and what it shouldn't do.
Before writing any line of code, you should start by knowing a couple of what I call characteristics of the service, such as:
- What is it for? What tasks will it do?
- What other services will use it? What protocol will it speak?
- Will it replace another service? Will it cover the same tasks?
This can ...