Boil the potatoes: Place the cubed potatoes in a large pot, cover with cold water, and add a pinch of salt. Bring to a boil and cook for 15-20 minutes until fork-tender. Drain.
Mash: Return the potatoes to the pot and mash with 2 tablespoons of the butter and the milk until smooth. Season with salt to taste.
Brown the beef: While the potatoes cook, heat a large oven-safe skillet over medium-high heat. Brown the ground beef with the onion and carrots, breaking up the meat as it cooks, about 8 minutes. Drain off the excess grease.
Build the gravy: Stir in the garlic and tomato paste and cook for 1 minute. Sprinkle the flour over the beef and stir to coat, then slowly pour in the beef broth and Worcestershire sauce, stirring until the gravy thickens, about 3-4 minutes.
Add the peas: Stir in the peas, salt, and pepper. Remove from heat.
Top and bake: Preheat the oven to 400°F. Spread the mashed potatoes evenly over the beef filling right in the skillet, and dot with the remaining 2 tablespoons of butter. Bake for 20-25 minutes until the potatoes are golden in spots.
Rest and serve: Let it sit for 5-10 minutes before serving.
Notes
This is the American beef version of shepherd's pie (technically cottage pie). Use an oven-safe skillet, or transfer the filling to a 9x13 baking dish before topping with potatoes.