Prepare the Meatballs
In a mixing bowl, combine ground meat, breadcrumbs, Parmesan, egg, garlic powder, onion powder, salt, and black pepper. Mix until well combined. Form into small meatballs, about 1 inch in diameter.
Cook the Meatballs
Heat olive oil in a large skillet over medium heat. Add the meatballs and cook for 4-5 minutes on each side, or until browned and cooked through. Remove the meatballs and set aside.
Make the Gravy
In the same skillet, melt butter over medium heat. Whisk in the flour and cook for 1-2 minutes to make a roux. Slowly add beef broth, whisking continuously to avoid lumps. Stir in Worcestershire sauce and season with salt and pepper. Let the gravy simmer for 5 minutes until thickened. Return the meatballs to the skillet and coat them with the gravy.
Prepare the Mashed Potatoes
While the meatballs cook, boil the potatoes in a large pot of salted water for 15-20 minutes, or until fork-tender. Drain and return to the pot. Add butter and milk, and mash until smooth. Season with salt and pepper to taste.
Assemble and Serve
Scoop a generous serving of mashed potatoes onto each plate. Top with meatballs and a ladle of gravy. Serve immediately with your favorite side dishes.