Cook the Pasta:
Bring a large pot of salted water to a boil.
Add the spaghetti and cook according to the package directions until al dente (usually 8-10 minutes). Reserve about 1 cup of pasta water before draining.
Prepare the Guanciale:
While the pasta is cooking, heat a large skillet over medium heat.
Add the guanciale (or pancetta) and cook until it becomes crispy and golden, about 5-7 minutes. Stir occasionally to ensure even browning.
Remove from heat and set the pan aside, leaving the rendered fat in the pan.
Whisk the Eggs and Cheese:
In a mixing bowl, whisk together the eggs, Pecorino Romano cheese, and Parmesan (if using) until smooth. Add a generous amount of freshly ground black pepper.
Combine Pasta and Guanciale:
Once the spaghetti is done, transfer it directly from the pot into the skillet with the guanciale using tongs (do not rinse the pasta).
Toss the spaghetti in the rendered fat from the guanciale, coating it well.
Create the Sauce:
Remove the skillet from heat and slowly pour in the egg and cheese mixture, stirring quickly to prevent the eggs from scrambling.
Gradually add reserved pasta water, a little at a time, until you achieve a creamy consistency (you may not need all the water). The sauce should cling to the pasta without being too thick or too runny.
Serve:
Divide the Spaghetti alla Carbonara among plates.
Top with extra Pecorino Romano, more black pepper, and serve immediately.