Combine the flour, salt, sugar and yeast in the bowl of a stand mixer with a dough hook.
In a large measuring cup, combine the warm water with the butter pieces and stir until melted.
In a small bowl, lightly beat the egg and add to the butter mixture.
Add the wet ingredients to the flour mixture and combine until a dough forms. Knead on medium speed (or by hand) until the dough is smooth and elastic, approximately 10 minutes. The dough should barely stick to the bottom of the bowl. If the dough is too sticky, add more flour 1-2 Tbsp at a time. If it's too dry, add more water, 1-2 Tbsp at a time.
Transfer the dough to a lightly oiled bowl, cover with a clean, dry towel and let rise in a warm spot for 1 to 2 hours or until it is doubled in size. Once the dough has risen, divide into approximately 20 pieces, 2 ounces apiece. Shape each piece into a round ball, place on a baking sheet that has been greased or lined with parchment paper. Cover with a clean, dry towel and allow to rise in a warm spot for an hour or until doubled in size.
Preheat the oven to 400°F and bake for 15 - 18 minutes or until golden brown. While still hot, brush with additional butter, optional.