In a large pot or Dutch oven, heat the olive oil over medium-high heat. Add the beef cubes in batches, browning them on all sides. Remove the beef and set aside.
In the same pot, add the chopped onion and garlic. Sauté for about 3-4 minutes until the onion is translucent.
Stir in the tomato paste, thyme, rosemary, and season with salt and pepper. Cook for another minute.
Return the browned beef to the pot and add the carrots, potatoes, beef broth, and red wine (if using). Stir to combine.
Add the bay leaves and bring the mixture to a boil. Once boiling, reduce the heat to low, cover, and let it simmer for about 2 hours, or until the beef is tender.
If using, add the frozen peas during the last 10 minutes of cooking.
Remove the bay leaves before serving. Garnish with chopped parsley and serve hot.