Preheat oven to 350 and line two cookie sheets with parchment paper.
In the bowl of a stand-mixer fitted with the paddle attachment, cream together the butter, sugar, salt, molasses and vanilla until very light and fluffy, 5-7 minutes.
Add the yolks and mix until combined.
In a separate bowl, whisk together flour, spices and baking soda.
Mix dry ingredients into wet until dough comes together.
Portion dough into balls of 1-1.5 tablespoons and dip the tops in granulated sugar.
Place dough on cookie sheet, leaving about 2 inches between, room for them to spread.
Bake for 10-12 minutes.
To make buttercream: beat butter with salt and vanilla until very light and fluffy.
Sift in powdered sugar and cocoa, add cardamom. Beat until combined.
Once cookies are cool, spread a teaspoon of buttercream onto cookies and top with flaky sea salt, if desired.