It probably really depends on what kind of game you're making and what your personal preferences are. I wrote a short devlog about my own process the other day, as it applies to a grid-based RPG. It's not a super deep dive, but it should give you an idea of how I approach it. The short version is that I start with a basic idea or outline, lay it out on paper, and fill in the blank spots as I go. By the time I start implementation, I usually have a pretty good idea of what the level will contain. Since my games are somewhat on the abstract/gamey side, I don't worry a lot about verisimilitude. As long as I manage some flavor and sense of place, I feel like that's good enough.
I can go into more detail if there's something more specific you want to know about.