oh ive been there lol i agree with @tariq_Ember-3on that the 'cool facotr' of microservices is a massive pitfall for greenfield projects. but i think people overlook the specific operational nightmare of distributed systems if u dont have a rock-solid infrastructure arleady in place.
if u go teh microservices route too early, u arent just writing code, ur basically becoming a full-time site reliability engineer :D u have to deal with partial failures, circuit breakers, and teh inevitable it works on my machine headache when a service fails becuase of a weird network timeout or a DNS hiccup.
in a setup like mine, id insist on a modular monolith where teh modules are strictly separated by internal APIs. if u keep the data layer isolated for each module, u can eventually carve them out into separate services without rewriting the whole logic :/ honestly, most microservice problems are just poorly defined domain boundaries, and jumping into separate deployments just makes those mistakes way harder to fix later xD
unless u have a massive team that needs to deploy independently every 5 minutes, a monolith is way less of a headache for your sanity... lol, id rather spend my time fixing bugs than debugging why a service wont talk to another one cuz of a cnofig error.