Preheat the oven to 350°F. Grease and flour a 9 x 13 baking pan.
In a medium bowl, add the flour, baking powder, baking soda, and salt together. Whisk well until completely combined. Set aside.
In a mixer, add the butter and sugar together. Beat for about 4 – 5 minutes on medium until it is well-combined and light and fluffy.
Add in the eggs one at a time, beating well after each egg before adding the next. Beat in the vanilla extract.
Alternate between adding the flour mixture in three additions, and the buttermilk in two additions. Mixing each until it is just combined. I recommend mixing the last addition of flour by hand with a spatula.
Pour the batter into the prepared baking pan and bake for about 50 – 60 minutes, or until a toothpick comes out clean. You may need to place aluminum foil over the cake before the last 10 – 15 minutes to keep it from over browning at the top.
While the cake is cooling, make the pastry cream.
Whisk together the milk, sugar, cornstarch, and salt together until it is well combined and there are no lumps. Whisk in the eggs and mix until well combined.
Pour into a medium saucepan and heat on medium.
Continue to whisk as it heats until it thickens to al almost pudding consistency. Immediately remove from heat.
Add in the butter and vanilla and stir well until the butter is melted and completely combined.
Pour into a container and place plastic wrap directly on the pastry cream to prevent skin and allow to cool completely.
Remove the cake and allow to cool completely.
Poke holes on the top of the cake.
Fill the holes with pastry cream. I prefer to use a piping bag to ensure the holes were fully filled. Spread a thin layer of the pastry cream over the top of the cake.
Make the ganache. Heat the heavy cream until it is steaming. Add the chocolate and allow to sit for about 5 – 10 minutes, then add the oil and stir well. Allow to sit to cool for about 15 minutes.
Pour the chocolate ganache over the top of the cake and spread over the cake.