Place fish in a bowl and cover with cold water. Refrigerate overnight, changing water three times, to rinse away all the salt.
Once rinsed, drain away all the water.
Place fish in a sauce pan with fresh water, and simmer over medium heat for 12 minutes.
Remove from water, and flake fish apart. Reserve.
Heat half of the oil in a skillet over medium-high heat. Add the potatoes in batches and saute until soft and slightly golden. Transfer the potatoes to paper towels to drain.
Add one tablespoon of the oil to the same skillet. Add the onion and saute until soft and slightly golden, about four to five minutes. Remove from heat.
Mix fish with onions and potatoes. Add egg whites, flour, pepper and parsley and mix.
Add remaining oil to a hot non stick skillet.
Shape mixture into ten centimeter colors, one centimeter thick.
Fry in hot oil, for two to three minutes or until golden and crispy.
Flip and cook for two to three minutes again.
Remove from heat and reserve for plating.
Heat one tablespoon (15 millilitres) of vegetable oil in a pan. Add onions and garlic and cook for three to four minutes. Add chili powder, oregano, cumin and bay leaves and stir.
To the same pan, add chicken stock, raisins, dried chilies, chipotle peppers, vinegar, honey, salt, cinnamon stick, orange juice, orange zest, and lime juice. Bring the mixture to a simmer and cook for one hour on low heat. Remove pan from heat and transfer mixture to a blender. Process until smooth. Reserve.
In a hot skillet, add the remaining vegetable oil, sear the shrimp for one minute on each side. In a new pan, add the shrimp and blended sauce. Toss gently. Serve over crispy bacalhau and garnish with salsa verde and crumbled cotija cheese.