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