Marinate the steak. In a bowl, whisk the olive oil, soy sauce, lime juice, honey, garlic, cumin, chili powder, pepper, and salt. Add the steak and coat well. Let it sit for 20–30 minutes at room temperature, or up to 2 hours in the fridge.
Cook the rice. While the steak marinates, cook your rice according to package instructions.
Fluff with a fork, season with a pinch of salt, and add a squeeze of lime for brightness.
Prep the toppings. Slice the avocado, halve the tomatoes, thinly slice the onion and jalapeño, rinse the beans, and chop the cilantro. Keep everything ready in small bowls.
Heat the grill or pan. Preheat an outdoor grill to medium-high or a cast-iron skillet over high heat. Lightly oil the grates or the pan.
Grill the steak. Remove the steak from the marinade, letting excess drip off.
Grill 3–5 minutes per side for medium-rare, depending on thickness. For a skillet, sear 3–4 minutes per side and baste with any leftover marinade during the last minute. Use a meat thermometer for accuracy: 130–135°F for medium-rare.
Rest and slice. Transfer the steak to a cutting board and rest 5–10 minutes.
Slice thinly against the grain to keep it tender.
Warm the corn and beans. If using, quickly warm the corn and black beans in a small skillet with a touch of oil, salt, and pepper, just until heated.
Assemble the bowls. Add a scoop of rice to each bowl. Top with sliced steak, avocado, tomatoes, onion, corn, and beans. Finish with cilantro, a squeeze of lime, and a pinch of salt and pepper.
Add hot sauce or chipotle mayo if you like heat and creaminess.
Taste and adjust. Before serving, taste a bite. Add more lime, a sprinkle of flaky salt, or extra herbs to balance the flavors.