Preheat your oven to 350F. Grease two 9-inch round cake pans and line the bottoms with parchment paper.
In a medium saucepan over medium heat, combine 1 cup Guinness stout and 1 cup butter. Stir until butter is fully melted.
Remove from heat and whisk in the cocoa powder until smooth and glossy. Let cool for about 10 minutes.
In a large bowl, whisk together the flour, sugar, baking soda, and salt.
In a separate bowl, beat the eggs with sour cream and vanilla extract until combined.
Pour the cooled Guinness mixture into the egg mixture and stir until smooth.
Add the dry ingredients gradually, folding gently until just incorporated. Do not overmix.
Divide batter evenly between prepared pans. Bake for 25 to 28 minutes until a toothpick inserted in the center comes out with moist crumbs.
Cool cakes in pans for 10 minutes, then turn out onto wire racks to cool completely.
For the frosting: Beat softened butter on medium speed for 3 minutes until pale and fluffy.
Add powdered sugar one cup at a time, mixing on low after each addition.
Pour in Irish cream liqueur, vanilla, and salt. Beat on medium-high for 2 minutes until silky smooth.
Place one cake layer on a serving plate, spread buttercream on top, add second layer, and frost top and sides evenly.