The recommended technique is to actually not resize as it is uploaded, but use image resizer to resize on demand.
Imagine if you had thousands of images uploaded and resized to fit a particular design and then decided to alter the design slightly and needed a new image size, or wanted to offer more than one gallery view with different image sizes. If you resize on upload that could be a real pain.
By using image resizer, if you decide to change designs later you can just change the image dimension and an optimized image will be created and cached the next time the page is viewed. You get all of the benefits, but you won't be stuck with the size you originally resized to.