Generously salt sliced bitter melon and place in colander for 2 hours. Squeeze water out with your hands.
In a large saucepan, heat oil and fry bitter melon on low to medium heat for 20 – 30 minutes. Drain on paper towel and set aside.
In the same oil, add onion and fry for 10 minutes on low to medium heat till it browns evenly.
Add salt and spices and stir for 1 – 3 minutes. Add water to deglaze the pan if necessary.
Add diced tomatoes and fry on high heat for 5- 7 minutes.
Add the fried bitter melon. Dial heat to lowest possible point and cover. Let it steam for five minutes.
Add cilantro for garnish and serve with either roti or plain rice.