Fill a large pot with water and bring to a boil. Add pasta and cook to desired doneness. I like mine cooked through but still a little firm. Drain pasta.
In a large skillet, heat olive oil. Add in garlic, shallots and red pepper flake and stir until fragrant, do not allow garlic to brown.
Add in walnuts and cook until nuts become fragrant and smell toasted.
Stir in ham pieces and cook until ham is warmed through and begins to brown on the edges.
Toss in pasta and stir to mix. Sprinkle with Parmesan cheese and parsley. Add in additional olive oil if pasta seems dry.