How to create a randomized map from pre-made city blocks?

I’m trying to figure out the best way to create a cityscape map for a first person single-player game where the simple objective is to collect multiple objects around the map to escape.

I want the map to be around a 10*10 grid of premade city blocks that can be spawned in at runtime in a randomized order to generate a unique overall map each time.

I’m currently thinking the best way to do this would be with sub-levels but I’m curious if anyone else has had any experience making a similar world/level and had any advice?

Super basic image for reference:

Did you ever get this figured out? I am trying to do something similar where the level will randomly pick from prefabricated small villages or clusters of stuff so kind of the same as a city block. But can’t wrap my mind around if it would be better to do large static meshes or something more efficient.