Heat the olive oil in a large pot over medium heat. Add the onion and cook for 3 minutes until it softens. Stir in the garlic and jalapeño and cook for 1 minute more.
Add the cumin, chili powder, and cayenne. Stir for 30 seconds to toast the spices. Pour in the black beans, corn, diced tomatoes, and vegetable broth. Bring the mixture to a simmer.
Cook for 15 minutes, stirring now and then. Use an immersion blender to partially puree the soup, leaving plenty of beans and corn whole for texture. Stir in the salt, pepper, and lime juice. Taste and adjust seasoning if needed. Ladle into bowls and top with the chopped cilantro.