Preheat your oven to 350 degrees F. Grease or liberally spray a 13x9 pan with cooking spray.
Beat together cake mix, pudding mix, egg whites, sour cream, vegetable oil, water and 2 teaspoons coconut extract with a hand mixer on medium speed (or with a stand mixer using the paddle attachment). Beat until smooth (about 2 minutes).
Pour batter into prepared pan and spread evenly.
Bake for 30 to 40 minutes (my cake was ready in 35 minutes using a glass pan), or until a toothpick inserted in the center is removed clean.
Allow cake to cool. While cake is cooling, prepare the frosting by beating cream cheese and butter in a large bowl with a hand mixer (or a stand mixer) until smooth. Slowly add powdered sugar, while continuing to beat until smooth. Add 1 teaspoon coconut extract and mix until combined.
Spread frosting over cooled cake and sprinkle evenly with coconut flakes.
Notes
*3 large eggs can be used in place of the 4 egg whites
Store in an airtight container in the fridge for up to 5 days.