Grease a 9x13 baking dish. Set aside.
In a microwave-safe bowl, warm the milk in the microwave for 1 minute, or until it's between 98°F to 105°F. Mix in the sugar and yeast and let it sit at room temperature for 10-15 minutes, until it becomes frothy on top.
In a large mixing bowl or in the bowl of a stand mixer, whisk the frothy yeast mixture with the eggs.
Add the flour and salt, and mix with a large wooden spoon for one minute, until there’s no big pockets of dry flour. (It’ll be stiff at this point, which is normal.)
Add the softened butter and mix for one minute to begin incorporating it into the dough.
On a lightly floured work surface, knead the dough by hand for at least 7 minutes, or until the dough is stretchy & elastic but still a little tacky (it shouldn’t be wet or sticky). Or knead the dough in a stand mixer with a dough hook attachment for about 5 minutes.
Place the dough ball back in the mixing bowl and cover it with a clean kitchen towel or dinner plate. Let the dough rise in a warm spot until it has doubled in size, after about 2 hours.
Divide the dough into 12 equal-sized pieces. Roll each piece into a small ball and gently push the sides down & underneath to create tension on the surface. Tuck any seams underneath, and arrange them in the baking pan seam-side-down.
Cover the baking dish with a clean kitchen towel. Set aside to proof for 30 minutes at room temperature, or until the dough balls have puffed up a bit.
Preheat the oven to 350°F. Whisk the egg and water to make the egg wash. Brush all over the proofed dough balls.
Bake for 30 minutes, or until the rolls are puffed up and golden brown on top. Brush the warm buns with the melted butter and sprinkle the optional coarse salt on top. Enjoy!