Heat the oil in a large skillet over medium-high heat, then add the diced potatoes. Spread them out in a single layer and cook, occasionally stirring, until they are golden brown and crispy on the outside, about 8-10 minutes.
Add the bacon pieces to the skillet and continue cooking, stirring regularly, until the bacon is sizzling and crispy, about 5-7 minutes. The potatoes will absorb some of the bacon fat, adding flavor.
Sprinkle the shredded cheese evenly over the hot potato and bacon mixture. Cover the skillet briefly to allow the cheese to melt, creating a gooey layer on top.
In a separate pan or right in the same skillet, crack the eggs directly onto the mixture or cook them separately if you prefer sunny side up. Cook until the whites are set and the yolks reach your desired doneness, about 3-4 minutes.
Season the dish with salt and freshly ground pepper to taste. If cooking the eggs separately, transfer the hash to serving plates and top with the eggs.
Serve hot straight from the skillet, allowing the crispy textures and melted cheese to be enjoyed with each bite. Dig in and savor the hearty, savory flavors.