I always try to balance team autonomy and crossfunctional requirements.
If having some piece of information across all components that have a dependency and moving data is too expensive, it's a good decision to centralise the user information in a single service.
This comes with several tradeoffs: all those teams will depend entirely on a new platform team, slowing down value delivery. This, from a pragmatic point of view, is not dramatic because teams usually have other blockers before that.
However I always ask, in terms of data locality, what would be the difference between propagating data with state sourcing or events, and having a cache in the client service after an HTTP request.
I hope I answered 😊.
Thanks for reading!
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
I always try to balance team autonomy and crossfunctional requirements.
If having some piece of information across all components that have a dependency and moving data is too expensive, it's a good decision to centralise the user information in a single service.
This comes with several tradeoffs: all those teams will depend entirely on a new platform team, slowing down value delivery. This, from a pragmatic point of view, is not dramatic because teams usually have other blockers before that.
However I always ask, in terms of data locality, what would be the difference between propagating data with state sourcing or events, and having a cache in the client service after an HTTP request.
I hope I answered 😊.
Thanks for reading!