Slice the beef: Freeze the steak for 15–20 minutes to firm it up. Slice thinly against the grain.
This keeps it tender and fast-cooking.
Make the sauce: In a bowl, whisk soy sauce, oyster sauce, honey, rice vinegar, sesame oil, red pepper flakes, broth, and cornstarch until smooth. Set aside.
Marinate briefly: Toss the sliced beef with 2–3 tablespoons of the sauce. Let it sit while you prep vegetables (about 10 minutes).
Don’t over-marinate.
Prep the broccoli: Cut into small florets for quick cooking. If using stems, peel them and slice thinly.
Blanch or steam (optional but helps texture): Steam or blanch broccoli for 1–2 minutes until bright green and slightly tender. Drain well.
This step helps the final stir-fry move quickly.
Heat the pan: Set a large skillet or wok over medium-high heat. Add 1 tablespoon oil until shimmering.
Sear the beef in batches: Add half the beef in a single layer. Don’t crowd the pan.
Sear 60–90 seconds per side until browned but not fully cooked. Transfer to a plate. Repeat with remaining beef, adding a little oil if needed.
Sauté aromatics: Reduce heat slightly.
Add the remaining oil, then onion (if using), garlic, and ginger. Stir 30–45 seconds until fragrant. Don’t let the garlic burn.
Add broccoli and sauce: Return broccoli to the pan.
Whisk the sauce again (cornstarch can settle), then pour it in. Stir as it thickens and turns glossy, about 1–2 minutes.
Finish with beef: Add the seared beef and any juices back to the pan. Toss to coat and heat through, 1–2 minutes.
The beef should be just cooked and tender.
Taste and adjust: Add more soy for salt, honey for sweetness, or chili for heat. If the sauce is too thick, splash in a bit more broth.
Serve: Spoon over warm rice or cauliflower rice. Top with green onions, sesame seeds, and a squeeze of lime if you like.