In a large pot, heat the olive oil over medium-high heat. Add the beef stew meat and brown on all sides, about 5-7 minutes. Remove the beef and set aside.
In the same pot, add the diced onion and cook until translucent, about 3-4 minutes. Stir in the minced garlic and cook for an additional 1 minute.
Add the sliced carrots and celery to the pot, cooking for another 3-4 minutes until they begin to soften.
Return the browned beef to the pot. Stir in the rinsed barley, beef broth, diced tomatoes, thyme, and rosemary. Season with salt and pepper.
Bring the mixture to a boil, then reduce the heat to low. Cover and simmer for about 1.5 to 2 hours, or until the beef is tender and the barley is cooked.
If using, stir in the fresh spinach during the last 5 minutes of cooking until wilted. Adjust seasoning if necessary before serving.