Make the tangzhong: In a small saucepan, whisk together the flour and milk on medium heat. Cook until a digital thermometer reads 150°F, about 3 minutes. Set aside to cool down.
Make the dough in a stand mixer: In the bowl of a stand mixer, add the flour, ube powder, warm milk, sugar, salt, yeast, tangzhong, and lemon juice. Mix with the dough hook attachment for 4 minutes.
With the mixer running, add the butter 1 piece at a time. Wait until each piece of butter is fully absorbed before adding the next piece. The entire process will take around 8 minutes.
Make the dough by hand: In a large bowl, add the flour, ube powder, sugar, and salt. Mix to combine. Add the warm milk, sugar, salt, yeast, tangzhong, and lemon juice. Mix with a wooden spoon until combined, then knead for 4-6 minutes until you have a soft dough.
First rise: Cover the dough and let rest for 1 hour in a dough proofer, 4 hours at room temperature, or overnight in the fridge.
Second rise: Punch down the dough to remove air and slightly knead. Shape into a ball and allow to rise at room temperature, covered, for about an hour.
Shaping and third rise: Butter the sides of a 9x4x4 pullman loaf pan. Roll the dough out to a 9x9 square, tightly roll into a spiral, and roll in black sesame seeds. Place the dough into the prepared loaf pan.
Cover the dough and let it rise until it reaches just below the top of the loaf pan, about 1 hour.
Bake: Preheat your oven to 375°F. Cover the loaf pan with the metal lid and bake for 40 minutes.
Cool: Remove from the loaf pan immediately and cool fully on a wire rack.
