Preheat & Prep Pans: Preheat oven to 350°F (177°C). Grease two 9-inch round cake pans, line the bottoms with parchment paper, and grease the parchment. This guarantees the cakes release perfectly.
Combine Dry Ingredients: In a large bowl, whisk together the flour, cocoa powder, baking soda, baking powder, espresso powder, and salt. Set aside.
Combine Wet Ingredients: In a separate large bowl, use a stand mixer or handheld mixer to beat the oil, granulated sugar, and brown sugar together. Add the room temperature eggs one at a time, then beat in the sour cream and vanilla extract until just combined.
Add Zucchini: Gently stir the shredded and blotted zucchini into the wet ingredients.
Combine Wet & Dry: Pour the dry ingredients into the wet ingredients and mix on low speed until just combined. Do not overmix. Use a spatula to scrape the bottom and sides of the bowl, then gently fold in the chocolate chips. The batter will be thick.
Bake: Divide the batter evenly between the two prepared cake pans. Bake for 28–32 minutes, or until a toothpick inserted into the center comes out with moist crumbs, and the top of the cake springs back when gently touched.
Cool Completely: Let the cakes cool in the pans on a wire rack for at least 1 hour. Then, invert the cakes onto the rack, remove the parchment paper, and let them cool completely before frosting (at least another hour).
Make the Frosting: In a large bowl, beat the softened butter on medium speed until creamy (about 2 minutes). Add the sifted confectioners' sugar and cocoa powder, 3 Tbsp of cream, salt, and vanilla. Mix on low speed until combined, then increase to high and beat for 2-3 minutes until smooth and fluffy. Add more cream, 1 Tbsp at a time, if it's too thick.
Assemble: Level the tops of the cooled cakes with a serrated knife if needed. Place one layer on a cake stand and top with about 1.5 cups of frosting. Add the second layer and frost the top and sides with the remaining frosting. Decorate with extra chocolate chips or sprinkles if desired.