1. Rinse the Bacalhau several times and place in a bowl of cold water overnight - change the water several times to reduce the saltiness of the fish.
2. After soaking overnight, drain the Bacalhau and put it in a large saucepan.
3. Cover with water, bring to a boil, and simmer until the Bacalhau flakes easily, about 15 minutes. Drain and cool. Flake the fish, carefully discarding any bones.
4. Heat 4 tablespoons of the olive oil in a large frying pan at medium-high heat. Add the potatoes in batches and fry until crisp and golden, about 7 minutes per batch. Put the fried potatoes on paper towels to drain the oil.
5. Add 1 additional tablespoon of the olive oil to the same pan. Add the onion and bay leaf and cook until the onions are golden brown, about 10 minutes.
6. Remove the bay leaf and reduce the heat to low.
7. Add the remaining 2 tablespoons of olive oil to the browned onion slices in the skillet. Mix in the Bacalhau and potatoes.
8. Whisk the eggs salt and pepper together in a large bowl until frothy.
9. Add the eggs and 3 tablespoons of the parsley to the Bacalhau and potatoes in the pan.
10. Cook over medium heat until the eggs are done, stirring occasionally, about 3 minutes. If you like your eggs drier, cook them for an additional minute, but make sure to stir so they don't stick to the pan and get brown.
11. Serve on a platter garnished with the black olives and the remaining parsley.