Pat the beef dry and season with salt and pepper. Heat the olive oil in a large pot over medium-high heat, then brown the beef in batches until all sides are seared. Remove the beef and set aside.
Lower the heat to medium and add the onion to the pot. Cook for 3 minutes until it softens, then stir in the garlic for 30 seconds.
Add the carrots, parsnips, and potatoes. Cook for 2 minutes while stirring.
Sprinkle the flour over the vegetables and stir for 1 minute to coat everything. Pour in the Guinness and scrape the bottom of the pot to loosen any browned bits.
Stir in the beef broth, tomato paste, thyme, and bay leaves. Return the beef to the pot and bring the mixture to a simmer.
Cover the pot, reduce heat to low, and cook for 1 hour and 45 minutes until the beef is tender and the vegetables are soft. Remove the bay leaves before serving.