Brown the ground beef in a large skillet or medium Dutch oven over medium heat until no pink remains. Drain well and set aside.
In the same skillet, heat the butter and oil over medium heat. Once the butter is melted, add the onion and carrots. Add a pinch of salt and pepper. Cook until beginning to soften, approximately 7 to 10 minutes. (Some caramelizing is fine and good if the veggies are beginning to brown.)
Add the garlic and stir for about 30 seconds.
Add the tomato paste, rosemary, thyme, and paprika to the vegetables and stir for about 1 to 2 minutes. Turn the heat down if the tomato paste is darkening too much on the bottom of the skillet.
Add the beef back to the skillet and stir.
Sprinkle the flour over the mixture and stir until no dry flour is seen, about 2 minutes. Add the stock, Worcestershire sauce, and peas. Stir to combine.
Bring the beef mixture to a gentle boil and allow the “gravy” to thicken.
Taste for salt and pepper, and adjust as preferred. Turn off the heat, place a lid slightly jar to keep the beef filling warm while you cook the potatoes.
Preheat the oven to 350 degrees F. Grease a 9" baking dish.
Bring a pot of salted water up to a boil. Add the potatoes to the boiling water and cook until they are easily pierced with a fork. Use a large slotted spoon or strainer spider to remove the potatoes from the pot to a mixer bowl. Reserve 1/2 cup of the cooking water.
Add the butter, salt and pepper to taste, to the potatoes. Mash the potatoes until no large chunks remain, or to the desired consistency. Add any of the reserved cooking water to the potatoes if a thinner consistency is desired. (Be mindful that adding any cooking water will be adding salt to the mashed potatoes.)
Pour the beef-vegetable mixture into the greased baking dish, smoothing the top.
Dollop the potatoes on top and smooth them across the top. (At this point you can create designs with a spoon or fork. It’s not necessary but creates a pretty presentation.)
Evenly sprinkle the Parmesan on top and bake for 25 minutes, or until the mixture is bubbly and hot. You can broil the Shepherd’s Pie if you’d like the potatoes a little browned, but keep watch that you do not burn the top.
Remove from the oven and serve warm.