Migrating Arduino Leonardo Atmega32U4 to Atmega16U4

What if I want to custom design my own circuit? Is this compatible? If I just burn HEX file for Leonardo on atmega16u4-AU without bootloader (by that I mean stock Atmel DFU bootloader)?