In a small sauce pan, bring water and butter to a boil over medium heat. Add flour and salt all at once. Beat with a hand mixer until blended and dough becomes solid. It will look gummy and a few butter will separate. This is normal.
Remove from heat and let stand for 10 minutes to cool.
Add eggs, one at a time, beating with a hand mixer after each addition. It will look chunky but keep beating. It will smooth out and will look shiny eventually. That’s when you know it’s done.
Insert a piping bag fitted with 1/2” round tip inside a tall glass/container. Transfer the smooth dough into the bag.
Pipe about 1.5” diameter mound into a parchment lined baking sheet spacing about 2’ apart. Smooth the top and form into a smooth dome with a wet finger.
Bake until puffed, very firm and golden brown. You can check by opening the cream puff. It should be hard and hollow inside. Cool on wire rack.
Beat heavy cream and sugar until well combined and cream starts to peak. Add vanilla extract and pudding powder and beat until soft peak. Transfer into a piping bag fitted with 1/4" round tip and let chill in the refrigerator at least an hour before using.
Once the puffs are room cooled, FILL the cream puffs from the side. Dust with confectioner’ sugar before serving.