Blend all pernil marinade ingredients until it forms a smooth paste.
Score your pork shoulder on a crisscross pattern all over the skin. Poke your knife into the pork all over the meat (back and sides) creating 1 inch wide and 2-3 inch deep incisions. Also under the skin fat to slightly detach the skin from the meat. I made about 25 in total.
Rub your marinade all over the meat and into each knife incision with your fingers. I recommend using gloves for this part.
Once the meat is completely covered in marinade, place it in a large bowl/container and cover it airtight with foil or cling film. Refrigerate for at least 8 hours ( I do 24 hours).
Remove it from the fridge 1 hour before cooking to reach room temperature. Preheat your oven to 350F. Place your pork shoulder (skin side up) in a deep baking pan (at least 2-3 inches tall) to catch the drippings.
Dry the pork skin with a paper towel and salt the skin evenly (use 1 tsp).
Cover your baking pan with tin foil sealing each side of the pan to conceal any steam from escaping. Cook for 4 hours.
Remove tin foil and cook for 1 more hour at 350F then turn the oven to 425F and cook for 45 minutes or until the top is golden brown and crispy. Remove the meat and let it sit for 5 minutes before pulling the meat apart with a pair of forks. Remove the bone and crispy skin before mixing in the drippings.