Stats (per in-game day): ~ 20 Iron Ingots, ~ 4 Roses.
Dig a hole in the ground, 4 blocks deep, 5 blocks wide and 2 blocks long.
2. Insert all 5 beds on the bottom of the hole and lure/spawn 5 villagers in the hole. once 5 villagers go to sleep the iron golem will spawn.
3. Surround the hole with Cobblestone Walls and make it 3 blocks high and cover up the hole.
4. On one of the corners, add 3 signs surounding an air block on the top corner.
5. Put lava inside the corner.
6. Under the lava, put a hopper in the ground and then connect it to a chest under the wall next to the hopper.
7. On the opposite corner, place 2 blocks and water on top. (yes, it should flow on the floor). This will push the iron golem into the lava
8. Outside the walls, place 10 leaf blocks sticking out of the wall like in the image below.
8. Do so on all 4 sides.
8. Now, connect the lines of leaf blocks together.
9. Fill the gaps with more leaf blocks. This will make it so that the iron golem cannot spawn on it and is forced to spawn inside the walls.
And now you should be finished with your Iron golem, Iron ingot farm.