Preheat your oven to 350°F. Grease a 9x13-inch baking dish with cooking spray or butter.
In a large skillet over medium heat, cook the ground beef and chopped onion until the beef is browned and the onion is soft, about 5 to 7 minutes. Drain any excess fat.
Stir in the black beans, diced tomatoes with green chilies, chili powder, cumin, garlic powder, salt, and black pepper. Simmer for 5 minutes to let the flavors meld.
In a separate bowl, whisk together the cornmeal, milk, and beaten egg until smooth with no lumps.
Pour half of the cornmeal mixture into the prepared baking dish, spreading it evenly across the bottom.
Spoon the beef mixture over the cornmeal layer, spreading it out to cover evenly.
Pour the remaining cornmeal mixture over the beef layer, spreading gently from the center outward.
Sprinkle the shredded cheddar cheese and black olives (if using) over the top.
Bake in the preheated oven for 30 to 35 minutes, or until the top is golden brown and set. A toothpick inserted into the cornbread should come out clean.
Let cool for 10 minutes before slicing. Garnish with fresh cilantro and serve with your favorite toppings.