Pre-heat oven to 325 degrees. Spray four 6-inch round cake pans (or three 8-inch round cake pans) with nonstick spray, line the bottom of the pans with parchment paper and spray again. Set aside
In a medium size mixing bowl whisk together the flour, baking powder, and salt. Set aside.
Place the butter in the bowl of a stand mixer and beat on high until light in color. Add the sugar and pudding mix and continue to mix until smooth and fluffy, about 2 minutes.
Turn the mixer to medium-low, add in the whole eggs, egg whites, and vanilla. Stop the mixer and scrape down the sides of the bowl. Mix on medium-high for an additional 2 to 3 minutes. The mixture should be smooth and silky.
With the mixer on low, alternately add in the dry ingredients and buttermilk, starting and ending with the dry ingredients. Mix until just combined, making sure to scrape the sides and bottom of the bowl to incorporate all of the ingredients.
Pour batter into prepared pans (about 12 to 13 ounces in each 6-inch pan) and bake until slightly golden in on top, 30 to 35 minutes. (A few moist crumbs should come out on a toothpick when testing the centers).
Let the cake layers cool about 10 minutes in the pans and then invert onto wire cooling racks.
When the cake layers are room temperature, level each layer (if needed), with a cake leveler. Wrap each layer with plastic wrap and chill until ready to use.