Well
udev is part of systemd today (it wasn't always so), so that's a wash.
Predictability in NIC names already existed. In the past distros would write rules to fix names of NICs once initially assigned. The first one detected would be eth0, but then a udev rule is saved so that this exact NIC (by MAC address) will forever be eth0, and any future cards become eth1, etc even if eth0 is later removed. And you have the option of manually editing the file, though I rarely did.
The new system is SUPPOSED to detect if a NIC is onboard, or in a PCI slot, and give it a name suitable to that. But even that is hit and miss. Sometimes dual-port NICs don't appear as 2 NICs but like SR-IOV subordinates of each other, which is wrong. Sometimes the motherboard onboard NICs are not properly recognized as such (I presume this is a BIOS error) and get labelled as being in add-on slots. Hell I've applied a BIOS update and seen PCI slots get relabelled; this didn't affect a NIC specifically but I saw the relabelling happen.
And finally, different motherboards will have different identifiers for their slots. Is the physical port I want to use on my addon card enp5s0, or enp94s0f1 ? It depends on the motherboard and I constantly need to check what it is for this machine.
So I've traded one consistent naming scheme which depends on the order of cards being detected over the machine's life, with one which depends on the BIOS naming scheme and how the NIC vendor labels their ports. I choose option 1.
Any just to make one thing clear, every single one of these things has happened to me personally and is not "I heard that this happens". Yes, I hate systemd, and it's not just joining the bandwagon - it's personal slights that have caused it.