Peel and cut potatoes into uniform 1-inch chunks, then set aside in a bowl of cold water to prevent browning and remove excess starch—this helps them crisp better when baked. Finely chop the onion into 1/4-inch pieces, mince the garlic cloves, and cut carrots and celery into small dice. Having everything prepped before you start cooking ensures the flavoring process moves smoothly and aromatics hit the pan at the right time.
Heat a large skillet over medium-high heat and add the ground beef, breaking it apart with a wooden spoon as it cooks until deeply browned, about 5-7 minutes. Add the finely chopped onion, diced carrot, diced celery, minced garlic, and thyme, stirring frequently and cooking until the vegetables soften and begin to caramelize, about 5 minutes. This browning and caramelization develops rich, savory flavors that form the foundation of the dish. I like to let the vegetables get a little color on them rather than just softening them—it makes a real difference in depth of flavor.
Stir in the tomato paste and cook for about 1 minute to deepen its flavor, then add the beef stock, marmite, and balsamic vinegar. Bring the mixture to a boil, then reduce heat to low and simmer gently for 10 minutes to allow the flavors to meld and the sauce to thicken slightly. Taste and season with salt and pepper to your preference. The marmite adds an intense umami depth that makes the filling incredibly savory, but use it sparingly as a little goes a long way.
While the filling simmers, preheat your oven to 200°C (400°F). Pour the cooked meat mixture from Step 3 into a 9x13 inch baking dish or similar size, then stir in the peas and spread in an even layer. Drain the potatoes thoroughly and pat dry with paper towels, then arrange them in a single, overlapping layer over the meat mixture. Drying the potatoes is essential—any excess moisture will steam them rather than crisp them.
Lightly spray the potato layer with low-calorie cooking spray, coating all exposed surfaces evenly to encourage browning and crisping. Bake in the preheated oven for 45 minutes until the potato edges are golden and crispy and the filling bubbles around the sides. I prefer FryLight because it creates a better, more even crisp than heavier oils, but any low-calorie spray works well.