Bring a large pot of salted water to a boil. Add the angel hair pasta and cook for 4-5 minutes until al dente. Reserve 1/2 cup of pasta water and then drain the pasta.
While the pasta cooks, heat the olive oil and 1 tablespoon of butter in a large skillet over medium-high heat. Season the shrimp with salt and pepper, then add them to the skillet with the shallots. Cook the shrimp for about 2 minutes per side until they turn pink.
Lower the heat to medium-low. Add the minced garlic to the skillet and cook for 1 minute until fragrant. Stir in the lemon juice, lemon zest, and remaining butter until melted. Then add the drained pasta and gradually add just enough pasta water until you reach your desired consistency.
Toss gently until the pasta and shrimp are well coated with the sauce. Sprinkle with grated Parmesan cheese and chopped parsley before serving.