Are those the position values during runtime? Maybe the lasers get instantiated at z = 0, making them get rendered either on top or behind the background which, too, is at z = 0.
If they aren’t instantiated at z = 0 but at z = -4, are there any error messages in your console? If there are none, check if the laser game object has got a SpriteRenderer attached. Only SpriteRenderers with sprites can be seen and rendered by the camera.
The instructor didn’t have to adjust the z-positions of the laser because his background is at z = 5 (or something like that). The lasers never share the same z-position as the background.