1) You don't want to risk dumping a mounted filesystem because of inconsistencies
2) Good luck getting the right device - in the end it's devicemapper all the way down with a lot of layers (ecryptfs, sdcardfs, bind mounts, ...) stacked between your shell and the device.
3) Unrooted phones don't allow access to raw Unix devices
4) You can't restore these backups anywhere if your phone (like almost all, I think it's a Netflix requirement) uses hardware key storage - simply because the key is in the secure element of your phone. Rooting a Samsung phone kills the HSM and switches over to software key management though.
5) Assuming encryption keys don't get in your way, you can only restore the dump on exactly the same model and firmware of device you have, because every manufacturer does stuff slightly different.
Makes me wonder if you can just dump the Flash storage chips through JTAG or similar - assuming the JTAG ports are accessible without completely dismantling the phone.
And even if you do root your phone and dd the storage, you'll only be able to conveniently restore to an identical (or the same) phone. I generally prefer Android to iOS, but they're not even on the same planet in terms of backups.
"developer mode" is typically a custom recovery environment that requires an unlocked bootloader to be flashed. A nandroid backup is effectively a dd image.
It's a bit messier if your data also lives on an internalized sd card.
Can't you enable developer mode, open a terminal and just run `dd`?