Slice onions into thin rings, place in a bowl with vinegar, olive oil, 1/4 tsp. salt and the pepper; stir and set aside.
Under cold running water, rinse excess salt from the fish. Place fish in a medium pot and fill ¾ of the pot with water.
Place on high heat and let it come to a boil, cooking for 20-25 minutes.
Drain salty water, cover again with cold water and set to boil another 20 minutes.
Meanwhile, peel and cut potatoes in one-inch cubes and cover a separate pot with water; place on high heat, add 1 tbsp. salt and cook until fork-tender, about 10-15 minutes.
In another, small pot, place eggs and cover with cold water; place on high heat, bring to a boil and turn off heat. Cover and let sit.
When the cod, potatoes and eggs are all done, drain water from cod, transfer to a large bowl and break up into bite size pieces with a fork.
Peel and cube the avocadoes, chop the eggs and place them in the bowl, along with the potatoes, onions and dressing.
Gently mix all ingredients and serve immediately.