Level layout, at least for games like the one I'm making, is a lot tougher than I thought it would be.
There's a balance that needs to be had. Distance between save points must be long enough to make dying a very real risk, but close enough to keep the game from being brutally unforgiving.
There need to be enough dead ends to obfuscate the game's powerups, but few enough to make sure finding them isn't a daunting chore.
The path to and from any given point must be considered. I often hear people complaining about how they hate games like this simply because it takes so long to get around. So I'm carefully building the game so that a lot of the game can be up and bypassed upon backtracking. In essence, the more game you complete, the less that's standing in your way. If you were to start your journey from the beginning, you could make it all the way to the end of the world in no time at all.
Risk/Reward is the biggest hurdle. Players don't want to take a giant risk, run way out of the way, expend items, and get to a point only to find the item is either stupid, useless, or anticlimactic. In short, the bigger the risk is, the bigger the reward must be. Kirby's Adventure was guilty of failing this. One of the game's most difficult challenges is a race against a clock where players have a very small window to navigate a frustrating obstacle, and the reward is 3 extra lives, which you could get any old anywhere for less rage and frustration. On top of that, getting a game over isn't even bad enough to really need to worry about lives. Think Super Mario World. If you get a game over, all that happens is you lose your level checkpoint. That's it.
But at the same time, I can't throw out powerups like candy, otherwise they wouldn't be very rewarding. And for any newbie game devs: Players sure as shit don't want to take a huge risk with no reward. If you have a long-ass section players have to navigate and it leads to a dead end with nothing to get out of it, players are going to resent that. I wish I didn't have to state that, but behind every stupid notice is a stupid game dev.
Threat scaling vs level scaling is the last thing I'll talk about. I've found that the size of the area must be balanced with the toughness of that area's enemies. I don't want to have huge, sprawling labyrinths that throw enemies at you left and right. I'm not making a Dark Souls game, here. The size of the area should be scaled to fit the over-all threat level of the enemies hosted in it. If a level is huge with ridiculously powerful enemies, that take more than a little time to beat, players are going to become frustrated at running into them over and over, and start looking for ways to get around them, rather than fight them. Castlevania: Aria Of Sorrow makes this mistake on the Final Floor with their Final Guard enemy. They're huge and hard to get past, do a lot of damage, require a lot of hits, and have shields to protect them from damage. There are a lot of them on this floor, and sometimes one after another. It turns into a slog that isn't very fun. So a good tip: if the enemies are weak, group them up and make the area large. Chances are the player will be making fairly quick progress. If the enemies are powerful and deadly, spread them out and keep the area small so fewer of them have to be put up with. Same with having lots of enemies going after the player all at once. The harder it is to get through, the shorter it should be.
I have a lot to consider, and my second-guessing time goes up with each stage of the game I complete the planning process on.