You can use a combination of translate and rotate to put the rectangles in place.
Try to avoid repeating code - you can use variables or methods to repeat a shape.
No traffic lights.
Define a hexagon and fill it twice - at different angles. Then fill two white rectangles on top.