Preheat oven to 350°F / 180 °C and line a muffin pan with cupcake liners
Cream the butter and both sugars together until light and fluffy
Add the egg and vanilla extract and beat until combined
Sift the flour, baking powder, baking soda and salt into a bowl, then pour half of it into the batter and mix in slowly until completely incorporated
Dissolve the espresso powder in the milk. Pour into the batter and mix until incorporated
Add the remaining flour and mix until incorporated
Scoop batter into cupcake liners and bake for 18 minutes or until the tops of the cupcakes bounce back when lightly pressed
Make the Coffee Buttercream
Whip the butter with a stand mixer or hand mixer, on high for 5 minutes. It should be lighter in colour and silky smooth
Dissolve the espresso powder in a tiny drizzle of water and pour into the butter along with the vanilla and salt, whip for another minute
Add the condensed milk in gradually, whipping slowly in between additions
Once all the condensed milk is added, turn the mixer on high again for 1 minute. Frosting should be silky and should make stiff peaks
If the frosting splits, try placing it in the fridge for 10 minutes, or add a few tablespoons of icing sugar to thicken it up and bring it back together
Once the cupcakes have cooled completely, top them with the coffee buttercream. I chose to decorate with chocolate coffee beans, but you could also sprinkle with cocoa powder or just leave them plain
Notes
It is crucial that the butter is at the right temperature for this frosting to work, if it is too warm or too cold it won't whip up properly. I recommend removing from the fridge about 1 hour before use.