Photograph: Dan Jones
In a large pan, soften the onion, carrot and celery in the oil for 10 minutes. Meanwhile, make the pesto by whizzing all the pesto ingredients in a blender with a pinch of salt.
Add the garlic to the onion, carrot and celery, and cook for 1 minute.
Pour in the stock, add the potatoes and bring to the boil. Simmer, uncovered, for 10 minutes until the potatoes are tender. Season.
Add the courgettes and simmer for a further 5 minutes, then add the sugar snap peas and petit pois and cook for 1-2 minutes until tender. Stir in the basil and mint leaves.
Spoon the soup into warm bowls. Finish with a drizzle of extra-virgin olive oil, a spoonful of pesto and a sprinkling of grated parmesan.
Get ahead: make up to the end of step 3 a few hours ahead