Rinse soaked beans and set aside.
Heat olive oil in a large soup pot over medium heat.
Add chopped onion, carrots, and celery and sauté until softened.
Stir in minced garlic and cook until fragrant.
Add soaked beans, diced ham, and ham bone to the pot.
Pour in chicken broth and add dried thyme and black pepper.
Bring the soup to a boil, then reduce heat to low.
Simmer partially covered for 1½ hours, stirring occasionally.
Remove ham bone, shred any meat, and return it to the soup.
Season with salt as needed and discard the bone.
Garnish with fresh parsley and serve hot.