Ensure all ingredients are chopped/measured/prepared before you start cooking. The goal is to time the recipe so that the pasta has finished cooking at the same time the ham, pea, and onion mixture is done.
Cook 1 pound spaghetti in large pot of boiling water.
Heat 1 tablespoon butter and 1 tablespoon olive oil in large sauté pan and cook 1 medium yellow onion over medium high heat until golden brown, about five minutes. Add 8 ounces ham, 10 ounces peas, and 1-2 cloves garlic and cook long enough to heat through.
Meanwhile in a separate bowl, combine 3 eggs, 1 cup parmesan, and 3/4 cup heavy cream. Whisk to combine.
Prior to drain pasta, add about 1/2 cup of the cooking water to a measuring cup in case it is needed to thin the sauce later on.
Drain hot pasta and return to pot. Add hot ham and pea mixture. With the heat off, add the egg mixture to the hot ingredients and stir very well to combine. The hot ingredients will cook the egg enough to turn it into a wonderful sauce without scrambling the egg. Season with salt and pepper, as desired.
Video
Notes
Freshly grated parmesan always melts better than pre-shredded. Either will work for this recipe, but finely grated cheese from a block is best.
For the best carbonara, the trick is to transfer the hot pasta directly out of the pot of salted boiling water and into the sauce, away from additional direct heat to avoid curdling the egg. This can be done either in the pasta pot or in a dish.
Although any kind of pasta can be used, spaghetti is really your best choice because it has a sufficiently large ratio of surface area to volume. This means that the cylindrical shape of each spaghetti noodle will maximize it's contact with the sauce, thus ensuring the sauce gets properly cooked.
To avoid having the egg scramble, never add the egg in carbonara sauce over direct heat. You use the heat from the freshly cooked pasta to heat and cook the sauce. You can also avoid curdling by setting your eggs out at room temperature a few hours before using them. That will decrease the temperature delta between your eggs and the hot pasta.
Leftover pasta carbonara can be reheated, but you must do it gently. My recommendation for reheating would be to either heat on the stove, covered, over very low heat. The alternative would be to heat in the microwave at a low power, say 30-50%, and to stir it often to ensure it gets heated evenly.