I recently joined a team who is trying to use "microservice" pattern for their new application. They've already started to implement API's. In the end it should be an API for both mobile and web UI. I have some issues about their implementation.
Things that doesn't make sense to me:
- Every "microservice" is inside one git repository plus one solution file (.sln they're using dotnet).
- Since all microservice intertwined they can't be deployed independently.
- There is "gateway pattern" but gateways are making http calls to other "microservices".
- There is a "common" project (class library) to all requests and responses. (all projects have reference to that project).
- For every 3rd party API they implemented a "microservice" to consume it. (think it like; mobile is making a request to a gateway then gateway proxies that request to a microservice then that microservice is making "actual" http call to 3rd party) this is same for web UI part.
I don't feel that they are doing things in right way, but I don't know where to start. I tried to trace a request but it did not go well. There are tons of boilerplate code in the solution file. The bad thing is, there is a deadline and they don't want to participate for a big refactor.
What should be the next step?
Any pattern to follow for those things?
Maybe microservices are not good for us.