systemd, as a service manager, is decent. Not necessarily a huge improvement for most use cases.
systemd, the feature creep that decides to pull every single possible use case into itself to manage everything in one place, with qwirks because making a "generic, do everything" piece of software is not a good idea, is not that great.
systemd, the group of tools that decided to manage everything by rewriting everything from scratch and suffering from the same issue that were fixed decades ago, just because "we can do better" while changing all well known interfaces and causing a schism with either double workload or dropping support for half the landscape from other software developer is really stupid.
If half the energy that got spent in the "systemd" ecosystem was spent in existing projects and solutions that already addressed these same issues, it's likely we'd be in a far better place. Alas, it's a new ecosystem, so we spend a lot of energy getting to the same point we were before. And it's likely that when we get close to that, something new will show up and start the cycle again.