Preheat your oven to 350°F (175°C) and grease the cake pan.
In a mixing bowl, cream the softened butter and granulated sugar until light and fluffy. Add eggs one at a time, mixing well after each addition. Stir in vanilla and almond extract.
In another bowl, combine flour, cocoa powder, baking powder, baking soda, and salt. Gradually add this mixture to the butter mixture, alternating with buttermilk. Fold in chopped pecans and chocolate chips if using.
Pour the batter into the prepared pan and bake for 60 minutes or until a toothpick comes out clean. Let it cool.
For the topping, combine evaporated milk, sugar, egg yolks, and butter in a saucepan. Cook over medium heat until thickened. Remove from heat, then stir in vanilla, coconut, and chopped pecans.
Spread the topping over the cooled cake. Slice and serve.
Notes
This cake can be stored in an airtight container for up to 5 days. You can also substitute walnuts for pecans if desired.
Keyword chocolate cake, German Chocolate Pecan Pound Cake, pecan topping