Whisk the flour, sugar, cocoa powder, baking soda, and salt together in a large bowl.
Whisk the vegetable oil, milk, eggs, and vanilla together in a medium bowl.
Pour the wet into the dry ingredients and whisk just until everything comes together.
Add in hot water and whisk until smooth.
Divide the batter into two 9″ cake pans. Bake at 350F for 30 minutes.
Whisk together the milk, sugar, and egg yolks in a medium saucepan.
Then add in the butter and cook on the stovetop until thickened. Stir in the shredded coconut, chopped pecans, and vanilla extract.
Spread half the frosting on one cake, top with the other cake, and spread the remaining frosting on top.