Who says only multiple teams need microservices, and who put them in charge of what people find helpful?
If the 'app' has enough different 'bits' I'd favour a SOA no matter the team size.
Somebody now wants to say that isolation doesn't necessitate distinct services; they're probably right, but the alternative is great discipline - why not make it easy?
It's a form of defensive programming isn't it? - if widget factory shouldn't be using a function from auth helpers, make it impossible!
There are better ways to solve that problem. Different packages, visibility modifiers, using interfaces between modules, etc. Taking a little time to iron out a disciplined process for your team is so much better than using tcp/ip as your process and all the problems that brings.
If you can't trust your team to follow a process correctly, you're fucked in a way microservices can't save you from.
If the 'app' has enough different 'bits' I'd favour a SOA no matter the team size.
Somebody now wants to say that isolation doesn't necessitate distinct services; they're probably right, but the alternative is great discipline - why not make it easy?
It's a form of defensive programming isn't it? - if widget factory shouldn't be using a function from auth helpers, make it impossible!