Cook the diced potatoes in a pan of boiling water for 10 minutes until just tender. Drain and set aside.
Meanwhile, heat 1 tbsp of the olive oil over a medium heat in a cast iron skillet. Once the oil is shimmering, add the shallot with a pinch of salt and cook until soft and just starting to brown. This should take around 5 minutes. Scrape the cooked shallots from the pan and set aside.
Return the skillet to the heat and turn it up to medium high heat. Add the remaining 1 tbsp of oil and the butter. Once the butter is melted and frothy, add the potatoes, garlic powder, smoked paprika (if using) and season generously with more salt and pepper. Fry the potatoes, stirring them around in the pan to make sure all of the sides brown for about 10 minutes until crispy.
Stir in the cooked shallots and cook for a further minute until heated through. Check the seasoning and remove from the heat.
Stir in fresh herbs and serve immediately.
