Heat a stockpot on medium-high heat. Add oil and heat until hot but not smoking.
Add the sliced onions and fry for 10-15 minutes or till the onions starts to turn golden brown (be careful not to burn it).
Add the garlic, ginger, serrano pepper, Cook for 1-2 minutes, until fragrant.
Add the cubed beef, pilau masala, beef stock cubes, bay leaves, cilantro, and salt to taste. Cook until the meat browns and caramelizes stirring occasionally about 8 to 10 minutes.
Add the diced tomatoes and cook for 4-5 minutes, until the tomatoes have released their liquid.
Stir in the potatoes and the water. Bring to a boil and cook for 10 minutes.
Stir in the rice, and cover tightly with a foil paper (to keep the steam in) if necessary. Reduce the heat to low and cook for 20 minutes, until the rice is cooked and the liquid is absorbed.
Once the rice is dry, remove the foil paper and fluff with a fork to ensure the seasonings are well distributed all around the rice.
Serve hot with fresh Kachumbari – salsa. Enjoy!