On pre-systemd systems you simply add MAC address or udev rule to pin interface to it's name.
It's exactly the same on systemd - to guarantee that you have predictable interface names you either need completely turn off this braindead slot numbering schema via kernel parameter or add MAC addresses to udev rules.
Why would you need it, systemd deelopers might ask ? Because interface name can be literally anything on virtualized host with multiple vNICs and depends on when VM was started. What, no one thought about virtual machines that in systemd "make boot faster" camp ?
So, what problem was solved exactly ? The problem of predictable output of ifconfig - if someone would explain why lunatics from systemd development team needed to completely rewrite output of ifconfig providing exactly the same information but in a different format it would be nice. Don't bother though, everyone already knows why.