In the bowl of your stand-up mixer, add lukewarm milk (~100℉). Mix in active dry yeast and allow to activate 8-10 minutes, until foamy.
In a medium bowl, whisk together flour, sugar and salt. To the bowl with the milk & yeast mixture, add the beaten eggs and vanilla. Then, add all of the flour mixture at once.
Attach the dough hook to your mixer and mix on low until dough becomes cohesive. Add cubes of butter slowly with mixer still on low.
Beat on medium speed for about 5 minutes until the dough is completely cohesive, smooth, and not sticky. The dough will start unsticking from the sides of the bowl. Remove the dough from the hook and the bowl and form it into a ball.
Transfer the ball of dough to a large, lightly greased bowl. Cover with plastic wrap or a clean kitchen towel and transfer to the fridge to rise for at least 2 hours or overnight.