Heat oven to 375°F. Grease two 8 or 9-inch round baking pans. I like to cut a round piece of wax or parchment paper for the bottom of the pan also, to make sure the cake comes out easily.
For the Cake:
Stir together sugar, flour, cocoa, baking powder, baking soda and salt in large bowl. In a separate bowl combine the eggs, buttermilk, oil and vanilla and mix well. Add the wet ingredients to the dry ingredients and mix to combine. Stir in boiling water (batter will be very thin). Pour batter into prepared pans.
Bake for 25 - 35 minutes (depending on your cake pan size. The 9'' pan takes less time to bake) or until a toothpick inserted in center comes out clean or with few crumbs. Cool 5 minutes in the pan and then invert onto wire racks to cool completely.
For the German Chocolate Frosting:
In a medium saucepan add brown sugar, granulated sugar, butter, egg yolks, and evaporated milk. Stir to combine and bring the mixture to a low boil over medium heat. Stir constantly for several minutes until the mixture begins to thicken.
Remove from heat and stir in vanilla, nuts and coconut. Allow to cool completely before layering it on the cake.
For the Chocolate Buttercream Frosting:
Melt butter. Stir in cocoa powder. Alternately add powdered sugar and milk, beating to spreading consistency. Add small amount additional milk, if needed to thin the frosting, or a little extra powder, until you reach your desired consistency. Stir in vanilla.
Place one of the cake rounds on your serving stand or plate.
Smooth a thin layer of chocolate frosting over the cake layer, and then spoon half of the coconut frosting on top, spreading it into a smooth layer. Leave about 1/2 inch between the filling and edge of cake.
Stack the second cake round on top. Smooth chocolate frosting over the entire cake.
Spoon remaining coconut frosting on top of the cake.
*If baking at high altitude add 3 tablespoons extra flour.Make Ahead Instructions: Both frostings (coconut and chocolate) can be made ahead and placed in a covered container in the fridge. The coconut frosting will keep for 1-2 weeks, depending on the freshness of the ingredients used. The chocolate frosting will keep for 2-3 weeks. Remove frostings from the fridge an hour before you're ready to frost the cake, to give them time to come to room temperature.Freezing Instructions: After baking the cake layers, allow them to cool completely, then wrap them well in plastic wrap and stick each layer in a ziplock freezer bag. Freeze for up to three months. Frost the cakes when they are frozen--they are much easier to frost this way! The assembled German Chocolate Cake can also be frozen, covered well, for 2-3 months (I recommend slicing the cake and wrapping each slice really well in plastic wrap, then placing in a freezer-safe container, for best results). Allow to come to room temperature before serving.