Preheat oven to 350 degrees. Line an 9x9-inch square pan with parchment paper, set aside.
In the bowl of a stand mixer or a large bowl with a hand mixer, beat the sugars and oil for 30 seconds. Add the vanilla and eggs, mixing well after each addition. Pour in the vanilla, buttermilk and hot water. Mix until combined.
Add flour, baking soda, baking powder, and salt. Sift cocoa powder over top. Mix until combined, about 30 seconds.
Pour into prepared pan. Place in the oven and bake for 30-35 minutes or until the top springs back when touched (or a cake tester inserted into the center comes out clean).
Remove from the oven and allow to cool.
For the frosting: in the bowl of a stand mixer or a large mixing bowl with a handheld mixer, beat the butter until light and creamy, about 2 minutes.
Carefully add in the powdered sugar, cocoa powder, milk, vanilla and salt, beat until fluffy, about 2 minutes.
Spread over the cooled cake. Top with desired garnishes.