3 ms·
> As with a lot of things, it comes down to communication. Between teams, and between the services they write. Which is just another expression of Conway's Law.
by beh9540 6y ago
> As with a lot of things, it comes down to communication. Between teams, and between the services they write. Which is just another expression of Conway's Law.
This is so accurate. I've heard engineers give state not needing to communicate, chillingly, as a positive for microservices, like "we won't need to talk to each other if all of us are working on different services". My other favorite is using microservices as an excuse for why the product isn't working "oh, my service is working fine, but his service is doing this when it shouldn't", when we're on a small engineering team.
- dllthomas 6y agoI think there's an element of truth to the engineers' claims. Working on different code bases means there are a lot of things you would otherwise need to talk about that now you don't. It's very much the case that you still need your interfaces to be clear (in fact, clearer!) but those discussions can be somewhat isolated, so more work can proceed asynchronously. Just how isolated depends on how exact (and correct) the specifications are, which is a question of trading up-front work against interruption.
- afarrell 6y ago> not needing to communicate sighhhhhhhhh API documentation is a medium of communication as much as any user interface. If you don't keep this in mind, then using your service's application programming interface will be a bad experience.