Preheat oven to 350°F convection. Spray and line baking pan(s) with parchment.
Whisk together flour, soda, powder and salt. Set aside.
Melt dark chocolate over a double boiler, set aside to cool slightly.
In the bowl of a stand mixer fitted with the paddle attachment, beat eggs, sugar, and vanilla until very light and fluffy, about 3 minutes.
Stir mayonnaise into melted chocolate.
Add all chocolate to eggs and beat until smooth and combined.
Alternately add the flour mixture and coffee and water. The batter is very loose, so I whisked the last of the flour into the mixture to get rid of any lumps.
Divide between pans and then bake in preheated oven 25-35 minutes (start checking at 20 minutes for round pans)
Cool 5 minutes in pan and then turn out onto wire rack to cool completely.
Make the Frosting:
In a heat proof bowl put chocolate, salt, cocoa powder, and coffee or water. Heat gently over a double boiler until just melted. Set aside to cool slightly.
In the bowl of a stand mixer beat together cream cheese and butter until smooth and homogenous. It is super important that your butter is soft or you will have lumps that will never come out. Not even if you use a blow torch.
Beat in vanilla extract followed by powdered sugar. Once combined, add the cooled chocolate mixture and then beat until smooth and lightened. Don’t over-beat or the cream cheese will begin to break and your frosting will loosen.
Assemble Cake:
Place one round cake on a cake stand or on a plate. Dollop 1/3 of the frosting on top. Spread it to evenly coat. Place the second round upside-down on top of the frosted cake circle. This way you have the flat bottom on top. Spread the remaining frosting on the top and around the sides. Swirling with an offset spatula to create decorative swirls.
Serve immediately or chill in the refrigerator. Let the frosting set a bit before wrapping in plastic wrap. The cake was delicious the day it was made but it was even better the next day!