Run function before uploaded image is saved

WordPress already compresses jpeg files, doing it a second time will just degrade the quality with recompression artefacts

Instead, adjust the compression percentage via the jpeg_quality filter:

add_filter( 'jpeg_quality', function() {
    return 80; // 80%
});