In a medium bowl, combine the warm milk and active dry yeast. Let it sit for about 5-10 minutes until it becomes frothy.
In a large mixing bowl, combine the flour, ½ cup of sugar, and salt. Once the yeast mixture is frothy, add it to the flour mixture along with the vegetable oil and egg. Mix until a dough forms.
On a floured surface, knead the dough for about 5-7 minutes until smooth and elastic. Place in a greased bowl, cover, and let rise in a warm place for about 1 hour.
While the dough is rising, prepare the filling. Pour boiling water over poppy seeds and let them soak for about 10 minutes, then drain. Mix soaked poppy seeds with ground almonds, ¼ cup sugar, vanilla extract, lemon zest, and orange zest.
Once the dough has risen, punch it down and roll it into a rectangle approximately 12x18 inches.
Spread the poppy seed filling evenly over the rolled-out dough, leaving a small border around the edges.
Starting from one long side, roll the dough into a tight log and pinch the seams to seal. Place the roll seam-side down on a greased baking sheet.
Cover with a towel and let rise for about 30 minutes.
Preheat your oven to 350°F (175°C).
Brush the top of the roll with the beaten egg.
Bake for 30-35 minutes, or until golden brown and sounds hollow when tapped.
Remove from oven and let cool on a wire rack before slicing.