Preheat your oven to 400°F. While it heats, trim the asparagus and cut into 2-inch pieces. Toss with olive oil, salt, and pepper on a sheet pan, spreading in a single layer. Roast for 10 minutes until tender-crisp and lightly caramelized. Transfer to a large bowl to cool slightly.
While the asparagus roasts, bring a large pot of salted water to a boil and cook the penne according to package directions until al dente. Reserve about 1/4 cup of pasta water before draining—this starchy liquid helps the pesto coat the pasta evenly. Add the drained hot pasta to the bowl with the roasted asparagus.
While everything is still warm, add the pesto and lemon juice to the pasta and asparagus, tossing gently to coat. I find that freshly squeezed lemon juice brightens the pesto's basil flavor better than bottled, and the warmth of the pasta helps the pesto distribute more evenly. Add a splash of the reserved pasta water if needed to loosen the mixture slightly. Fold in the halved cherry tomatoes.
Once the pasta salad has cooled to room temperature, crumble the goat cheese over the top and sprinkle with fresh parsley. I like to fold the goat cheese in gently rather than mixing it aggressively, so you get creamy pockets throughout the salad instead of a uniform coating. Taste and adjust seasoning with additional salt and pepper as needed.