Heat a medium-sized pan over high heat. Once hot, add the oil and onions and sauté until the onions are slightly brown, about 8 minutes.
Add the garlic and ginger, and stir for a minute. Add the ground beef and cook for 4-5 minutes, stirring often, until it’s no longer pink and most of the moisture dries up. Use a wooden spatula to break up the meat into small pieces to ensure no lumps.
Add the tomato, green chili pepper, yogurt, red chili powder, turmeric, and 1 tsp of the salt and continue to cook for 2 minutes, until the tomatoes start to break down. You’ll notice the liquid in the mixture is beginning come to a boil.
Lower the heat to medium, cover and allow it to cook for about 15 minutes, stirring once in between. If you feel that there is not enough moisture and the meat is sticking to the bottom of the pan, add ¼ cup water.
Uncover, and stir in the peas, more green chili pepper (if using), the remaining 1/8 tsp salt, and 1/2 cup water. Cover again and allow the mixture to cook for about 3 minutes, or until the peas are cooked through.
Add the remaining spices and cilantro listed under ‘after cooking’ and sauté for another minute or two. Taste and adjust salt and spice. Lower the heat to the lowest setting, cover, and allow the flavors to settle for 5 minutes.
Turn off the heat, add lemon or lime juice, if desired, and serve hot with any kind of bread or rice.