Grease the base and sides of an 20-cm (8-inch) square cake pan. Line the base and sides with greaseproof paper.
Prepare the steamer. Bring water to a boil over high heat. Once boiling, reduce heat to medium until water comes to a gentle boil.
In a stand mixer fitted with the whisk attachment, whip eggs, caster sugar, brown sugar, and salt, on high speed (speed 4 on my Kitchen Aid mixer). Whip until thickened and almost tripled in volume, about 5 to 6 minutes.
Add in vanilla extract, baking soda, and evaporated milk. Whip on medium speed (speed 3) until well mixed, about 30 seconds.
Sift in the plain flour and baking powder. Continue to whip on medium speed (speed 3) until well combined, about 30 seconds, or until there are no longer lumps of flour. The batter should be thick but smooth.
Lastly, add the oil. Fold into the batter by hand using a spatula, until well incorporated. (Read Recipe Notes below)
Pour the batter into the prepared cake pan. Tap the cake pan gently, 2 to 3 times, on the counter-top to eliminate big air pockets.
Place into steamer (water must already be boiling). Cover with a dry tea cloth. Place the steamer lid back on, and steam for 30 to 35 minutes, or until a bamboo skewer inserted into the centre of the cake emerges free of sticky batter. (Read Recipe Notes below)
Steaming Equipment. It's very important to use the appropriate steaming equipment. Bamboo steamers are recommended, but as I don't have these, I will focus the discussion here on using a standard cake pan, and steaming in a two-vessel stainless steel steamer (the bottom vessel holds the water, while the top vessel has a perforated base and lid, to allow the steam to rise from the bottom vessel towards the top). Make sure you use a cake pan (square or round is fine) that can sit inside the top vessel, with sufficient room between the sides of the vessel and the cake pan, and with at least 1-2 inches of space between the steamer lid and the cake pan. The steamer lid must be able to fully sit on the pot, without gaps.
Amount of Water and Water Level. Fill the bottom vessel with as much water as possible (depending on the steaming time required), leaving at least a 2-inch gap between the water level and the perforated base of the top vessel. This will minimise the need to top up the water should the water evaporate too quickly. If you need to add more water, be sure to add boiling hot water to ensure a consistent steaming temperature, and to minimise drastic fluctuations in air pressure.
Preparing and Filling the Cake Pan. To prepare your cake pan, grease the base and sides of your cake pan, then line with greaseproof paper on the bottom and all around the sides. Fill the cake pan with batter not exceeding 2/3 of the pan's height, to allow room for the cake to rise. It helps to tap the cake pan on the counter a few times, to eliminate big air pockets. Steam in batches, if your cake pan cannot accommodate all the batter at once.
Covering the Cake Pan.Once you've filled your cake pan with batter, gently lower the cake pan into the top vessel of the steamer, and place a dry tea cloth over the top, ensuring the cloth does not touch the batter. This is important, as the tea cloth will absorb droplets of condensation that form under the surface of the lid, and thus, help prevent water wetting the surface of the cake, making it soggy. Place the top vessel back on top of the bottom vessel, and cover with the steamer lid. The water in the bottom vessel must already be gently boiling, before you place the top vessel (with the cake pan) on it.
Preparing the CakeBatter. Make sure you have your ingredients at room temperature. Beat the eggs and sugar till the mixture turns thick, and almost triples in volume. This may take up to 5 to 6 minutes at medium-high speed in an electric mixer, so don't be tempted to rush through this step. The goal is to trap as much air as possible. When you introduce the flour-baking powder mixture into the egg-sugar mixture, beat at a lower speed, and stop once the flour has been well-incorporated (i.e. till there are no longer lumps of flour) - the batter should be thick, but smooth. Lastly, to introduce the oil, it is a good idea to scoop out about 1/4 cup of the batter and mix it in with the oil, with a spatula by hand, until well blended, and then pouring it back into the rest of the batter. Finish up folding the oil mixture into the batter by hand, and not in the mixer, until well incorporated.