Position oven rack to the middle. Preheat oven to 350° F (177°C). Grease the bottom and sides of a 9x13 inch cake pan with nonstick spray. Set aside.
In a large bowl, sift the flour, baking powder, and salt and whisk to combine. Set aside.
In the bowl of a stand mixer fitted with the paddle attachment, or in a large bowl using a hand mixer, beat the butter on medium speed until creamy, about 1 minute.
While the mixer is running, slowly pour in the sugar and continue to beat until light and fluffy, about 4-5 minutes. Add sour cream and continue to mix until combined.
Scrape down the sides and bottom of the bowl. Lower the speed to medium-low and mix in the egg whites, one at a time until completely combined.
Add the oil, vanilla, and almond extract to the milk or buttermilk and set aside.
Add ⅓ of the dry ingredients and beat just until combined, then add ½ of the liquid mixture and mix until just combined. Continue mixing in ½ of the remaining dry ingredients, remaining liquids, then remaining dry ingredients. Remember to mix after each addition before adding the next.
Scrape down the sides and bottom of the bowl again to make sure everything is mixed in properly.
Pour the batter into the prepared pan and spread into an even layer. Bake for 30-35 minutes or until a toothpick inserted into the center comes out clean.
Remove the cake from oven and allow to cool completely on a wire rack.