Preheat oven to 350° F.
Line two cupcake pans with cupcake liners.
In the bowl of stand mixer fitted with the paddle attachment, at medium speed, mix brown sugar and butter and beat until light and fluffy, about 2 minutes. Scrape the sides of the bowl as needed. Add eggs, one at a time, and then add vanilla.
In a large bowl, whisk together the flour, baking powder, baking soda, and salt.
With the mixer at low speed, add flour mixture and buttermilk alternately to butter mixture, ending the process with flour mixture. Mix until just combined.
Pour batter evenly amongst cupcake liners to about 1/2 way up the liner.
Bake for 20-25 minutes until a toothpick inserted in the center of a cupcake comes out clean.
Remove cupcakes from oven and let them cool in the pan for about 5 minutes. Remove from the pan and allow them to completely cool before frosting with buttercream.
To make the buttercream: Cream the butter on medium/high in a stand mixer for about 3 minutes until light and fluffy.
Add half of the dulce de leche (reserve the rest for later) and mix until incorporated. Add powdered sugar and salt. Mix at low speed.
When all the ingredients have been incorporated, turn the mixer back up to medium/high speed for 2 minutes. The frosting should be thick and fluffy.
Put the buttercream frosting in a big pastry bag with a 1M star tip. Frost the cupcakes. Put the remaining dulce de leche in a small disposable pastry bag and cut a small piece from the bottom of the pastry bag. Pipe dulce de leche on top of buttercream.