Pat the beef cubes dry with paper towels. Season generously with salt and pepper, then toss with flour until evenly coated, shaking off any excess.
Heat 2 tablespoons of olive oil in a large Dutch oven over medium-high heat. Working in batches, brown the beef on all sides, about 8-10 minutes total. Don't crowd the pan! Transfer browned beef to a plate.
Add the remaining tablespoon of oil to the pot. Add onions and cook until softened, about 5 minutes. Stir in garlic and tomato paste, cooking for 2 minutes.
Pour in the Guinness, scraping up all those delicious browned bits from the bottom of the pot. Let it simmer for 3-4 minutes.
Return the beef to the pot along with any accumulated juices. Add beef broth, Worcestershire sauce, brown sugar, bay leaves, and thyme. Bring to a boil, then reduce heat to low, cover, and simmer for 1½ hours.
Add the carrots and potatoes, cover, and continue simmering for another 45 minutes to 1 hour, until the beef is fork-tender and vegetables are cooked through.
Remove bay leaves and adjust seasoning with salt and pepper. If the stew is too thin, simmer uncovered for 10-15 minutes to thicken. Garnish with fresh parsley and serve with crusty bread!