> they think of it like removing some characters in a sentence on a word document
Too real. In the past, the way we usually went about saving space when we needed it was removing small animations, shortening log messages (eventually encoding/hashing them), compressing icons that were stored in the firmware, and ensuring large functions don't get inlined.
LTO was also an option, but wow, does it slow down build times and make the development cycle a pain.