Heat a medium skillet on medium heat and add the ground beef. Stir and add pepper.
Continue to stir and break up the pieces of the ground beef so they're all about the same size. Let cook until the ground beef is cooked through.
Transfer the ground beef to a paper towel-lined plate and set aside for a moment.
Heat a large-size soup pot on medium heat and add olive oil and butter.
When the butter melts, add the onion and garlic. Continuously stir so that the garlic doesn't brown. Let cook (while stirring) until the onions start to turn translucent (about 4 or 5 minutes).
Add the cooked ground beef to the pot. Stir together.
In the soup pot, add the carrots and celery. Stir together and let cook for 5 minutes. Add the beef broth to the pot.
In a medium size bowl, add the canned tomatoes and with clean hands, smash them with your fingers. Then add them to the pot. Stir together. Add the water to the pot and stir.
Let the soup cook until it starts to bubble, then turn the heat to low. Add the eggplant and stir. Add parsley, salt and pepper. Stir together.
Let the soup simmer until the eggplant turns translucent (about 40 minutes) before adding the pasta and corn. Stir occasionally.
When to add the pasta - About 25 minutes before serving, add the salad macaroni and stir together. The macaroni pasta tastes best when it's cooked al-denti (firm) so when making this soup, don't add the macaroni until 25 minutes before serving it. Otherwise, the pasta will continue to cook and turn soft if its left in the pot to simmer further.
When to add the corn on the cob - About 20 minutes before serving, add the corn on the cob to the pot. Stir occasionally.
Do a taste test and add more salt if needed.
Serve the soup while warm in serving bowls. Top with slices of avocado, and 1 to 2 pieces of corn on the cob (depending on the size of the serving bowls).
Garnish with parsley and grated Parmesan cheese.