| ▲ | dxdm 5 hours ago | |
> All of this arises from your failure to question this basic assumption though, doesn't it? Haha, no. "All of this" is a scenario I consider quite realistic in terms of what needs to happen. The question is, how should you split this up, if at all? Mind that these concerns will be involved in other ways with other requests, serving customers and internal users. There are enough different concerns at different levels of abstraction that you might need different domain experts to develop and maintain them, maybe using different programming languages, depending on who you can get. There will definitely be multiple teams. It may be beneficial to deploy and scale some functions independently; they have different load and availability requirements. Of course you can slice things differently. Which assumptions have you questioned recently? I think you've been given some material. No need to be rude. | ||
| ▲ | 0x3f 4 hours ago | parent [-] | |
I don't think I was rude. You're overcomplicating the architecture here for no good reason. It might be common to do so, but that doesn't make it good practice. And ultimately I think it's your job as a professional to question it, which makes not doing so a form of 'failure'. Sorry if that seems harsh; I'm sharing what I believe to be genuine and valuable wisdom. Happy to discuss why you think this is all necessary. Open to questioning assumptions of my own too, if you have specifics. As it is, you're just quoting microservices dogma. Your auth service doesn't need a different programming language from your invoicing system. Nor does it need to be scaled independently. Why would it? | ||