Set your oven rack about 6-inches from the bottom heat source; turn the oven on broil.
Heat olive oil in a large, ovenproof nonstick skillet over medium-high heat. Add scallions; sauté for 1 minute. Stir in ham; sauté 1-2 minute longer. Add spinach, cook, stirring until wilted, about 3 minutes.
Whisk eggs and cheese together; season with salt and pepper. Arrange spinach mixture evenly in the bottom of the skillet; pour egg mixture over the top. Reduce heat to medium-low and cook without stirring until frittata is almost set in center, 10 to 12 minutes.
Transfer the skillet to the oven, broil, watching carefully to avoid burning, until top is set and golden brown, about 2-3 minutes. Run a spatula around edges of skillet and cut into wedges (to safeguard your pan, you can slide frittata onto serving plate before slicing). Serve warm.