Peel the potatoes, and cut into thin (less than 1/8") slices.
Peel the out layer of the onion, and cut into thin slices
Cut the bacon to 1/8" wide pieces
Put the pan on stove top. Turn heat to high. Add the olive oil.
Once the oil becomes hot, add the onion slices. Turn the heat to medium.
After the onion become translucent, add bacon slices. Cook for 2-3 mins. Add the potato slices. Keep the heat at low to medium and cover the pan with a lid. Stir the mixture occasionally to prevent it from turning brown.
After about 10 mins, the potato pieces become soft and can be broken while stirred. Turn off the heat.
Crack the eggs and whisk them. Add the cooked potatoes to the egg (try to keep excess oil in the pan for next step). Stir to mix the egg and potatoes. Add salt and black pepper to season. Cover this mixture with a plate to rest for 10-15 mins.
Pour the rested egg/potato mixture to the pan and turn heat to low/medium. Slowly cook until the eggs solidify (3-5mins). Sprinkle the cheese on top. Turn off the heat. Cover the pan with a clean plate. Carefully/slowly flip the pan with one hand holding the pan handle and the other hand pressing against the plate.
Use a spatula to push the half cooked egg/potato from the plate back into the pan. Turn heat to low/medium. Cook another 3-5 mins.