In a large saucepan, cover potatoes with at least one inch of water. Bring to a boil. Cook for 15-20 minutes or until easily pierced with fork.
Drain potatoes. Once cool enough to handle, cut potatoes into quarters (or bite-sized pieces).
In a large cast-iron pan or skillet. Heat 1 tablespoon of butter and olive oil over medium-high heat. Add the onion wedges and cook until tender and the edges start to brown. Remove to a plate.
Heat the remaining butter and olive oil in the pan. Add the cooked potatoes. Sprinkle with garlic powder, salt, and black pepper. Stir to combine.
Cook the potatoes for 5-10 minutes stirring occasionally, until all sides have browned and are crispy. Add more butter or oil as necessary.
Remove pan from heat and stir in onions and any optional herbs like parsley, chives, and rosemary. Serve warm.