1. Building reliable and testable microservices is a lot harder than you think. Distributed Transactions, synchronized clock, tracing, observability, debugging, etc are never easy. 2. Effectively testing microservices requires a ton of tooling and foresight.
So build boring stack first, Understand your domain and tech-sack. Monoliths are a good starting point to do so. Scale with monoliths first, figure out what is the bottleneck and optimize (A solid monolith can easily handle 10k rps nowadays). You don't become Google/Netflix/Uber, etc scale from day one. By the time you get there, you will have enough knowledge to build one.