In a large pot or Dutch oven, heat the olive oil over medium heat. Add the chopped onion and cook until translucent, about 3-4 minutes.
Stir in the minced garlic and cook for an additional 1-2 minutes until fragrant.
Add the ground beef to the pot and cook until browned, breaking it apart with a wooden spoon, about 5-7 minutes.
Stir in the diced carrots, celery, and potato. Cook for another 5 minutes, stirring occasionally.
Add the diced zucchini, diced tomatoes (with their juice), beef broth, thyme, and oregano to the pot. Stir to combine.
Bring the soup to a boil. Then reduce the heat, cover, and let it simmer for 20 minutes.
If using, add the green beans halfway through the simmering time. Season with salt and pepper to taste.
After the soup has finished simmering, give it a stir, and then ladle it into bowls to serve.