German Chocolate Frosting (with Sweetened Condensed Milk)

Yield
Enough frosting to cover a 3 layer (8-inch rounds) or 2 layer (9-inch rounds) in a thin layer.
Ingredients
- 2 (14 ounce) cans sweetened condensed milk
- 1-1/2 cups lightly packed light brown sugar
- 6 large egg yolks
- 1 teaspoon sea salt
- 1 teaspoon vanilla extract
- 10 ounces (~ 2 3/4 cups) toasted, chopped pecan halves
- 7 ounces (~ 3 cups sweetened flaked coconut), toasted
Steps
- Pour the sweetened condensed milk into a heavy bottomed sauce pan. Stir in the brown sugar, yolks, salt and vanilla. Whisk until completely smooth. (Do this before you turn on the heat.)
- Turn heat to medium and stir frequently until the mixture almost comes to a boil (but do not let it boil or the yolks will curdle).
- After 5 minutes, turn heat to medium-low and stir nearly constantly, until mixture thickens enough to coat the back of a spatula and not run when you drag a spoon through it (don’t use your finger because this mixture is hot and will burn you). It should take about 6 to 8 minutes more, from the time you turned the heat down to reach the right consistency. It will thicken more later, when it cools.
- Remove from heat.
- Set aside about 1/4 cup each of the toasted pecans and coconut to garnish the top, and stir the rest into the custard. Let cool a few minutes, but frost the completely cooled cake layers while the frosting is still warm.
Source
http://penandfork.com/recipes/german-chocolate-cake-frosting-icing/