Heat olive oil in a large pot over medium-high heat.
Add beef cubes and sear until browned on all sides (5-7 min). Remove and set aside.
In the same pot, add onions and garlic. Sauté for 2-3 minutes until fragrant.
Stir in tomato paste, thyme, rosemary, salt, and pepper.
Pour in ½ cup beef broth to deglaze the pot, scraping up browned bits.
Return beef to the pot. Add remaining broth, water, diced tomatoes, bay leaf, carrots, celery, and potatoes.
Bring to a boil, then reduce heat to low. Cover and simmer for 1 hour.
Stir in green beans and corn. Simmer uncovered for another 20-30 minutes until veggies are tender.
Discard the bay leaf. Taste and adjust seasoning if needed.
Serve hot with crusty bread or crackers.