Warm the olive oil in a large soup pot or Dutch oven over medium-high heat, then cook the onion and celery for 3 minutes before adding the garlic for 1 minute more. The vegetables should start to soften and smell sweet and savory, but they do not need to brown.
Pour in the chicken broth and water, then add the split peas, bay leaves, thyme, a light seasoning of salt, and black pepper to taste. The peas will settle into the liquid, and the pot should look loose and brothy at this stage.
Set the ham bone or ham shanks into the pot, bring everything to a boil, then lower the heat to medium-low, cover, and simmer for 60 to 80 minutes, stirring now and then. You’ll know this stage is working when the broth smells deeply smoky and the peas begin to swell and soften.
Lift out the ham and let it rest for 10 minutes, then shred or dice the meat and keep it covered. The meat should come away easily once it has cooled slightly, and the bone will have given the broth a fuller, richer taste.
Stir the carrots into the soup, cover again, and keep simmering for 30 to 60 minutes, stirring occasionally, until the peas have mostly broken down. Fully cooked split peas look collapsed and creamy, while undercooked ones still hold a firm, grainy center.
Return the ham to the pot, taste, and add more salt if needed, then serve warm with parsley if desired. The finished soup should be thick enough to coat the spoon, with soft peas, tender carrots, and little bits of smoky ham throughout.