In a bowl of a stand mixer fitted with the paddle attachment, place the flour, milk powder, yeast, sugar, salt, and egg and mix at low speed while adding the milk.
Once you have a shaggy mass and the flour is hydrated, replace the paddle attachment with the dough hook and mix on medium-low speed for about two minutes.
Increase the speed to medium-high and add the butter one piece at a time, waiting for each piece to be fully incorporated before adding the next.
Knead for 5-7 minutes on high speed until you have a smooth, slightly sticky dough and elastic.
Transfer the dough to a clean bowl, cover with plastic wrap, and set aside to rest for the first rise, about 90-120 minutes.