Combine olive oil, balsamic vinegar, minced garlic, Worcestershire sauce, soy sauce, paprika, cumin, black pepper, salt, garlic powder, rosemary, and thyme in a large bowl. Whisk until the marinade blends completely, creating an aromatic liquid that coats beef evenly.
Add cubed sirloin to the bowl and toss until every piece is thoroughly coated in marinade. Cover with plastic wrap and refrigerate for at least 30 minutes, though overnight yields deeper flavor (this grilled beef skewers method becomes more flavorful the longer it sits).
Remove beef from refrigeration 10 minutes before grilling to bring it closer to room temperature. This ensures even cooking throughout, preventing a cold center when high heat hits the grill.
Thread marinated beef onto soaked wooden skewers in an alternating pattern with bell peppers, red onion, and mushrooms—this prevents vegetables from sliding during grilling. Leave ¼ inch between pieces so heat circulates and creates caramelization on all sides.
Preheat your grill to medium-high heat (around 400°F) and oil the grates lightly to prevent sticking. Place assembled skewers directly over the heat source.
Grill for 4-5 minutes on the first side without moving, allowing a caramelized crust to form. Rotate 90 degrees and cook 3 minutes to create cross-hatch marks, then flip and repeat on the opposite side for another 3-4 minutes.
Check internal temperature with a meat thermometer: medium-rare hits 130-135°F, while medium reaches 135-145°F. Transfer finished skewers to a clean plate and tent loosely with foil for 2 minutes to redistribute juices.