But to be honest, I prefer upstart much more. It's simple, it does one thing, it's clear about what happens (most of the time). With systemd I find myself quite often with no idea where to even look for information about something not starting. I still have a service in the system that I don't know how to remove (it's failing to start apparently, not even sure where does it get created). I spent hours debugging issues and trying to get it all-green on my system... and failed. In my opinion it's just too big and complex for it's own good. For my deployments upstart provides the equivalent behaviour in the part that matters (actually running the software) in a simpler way and does not try anything else.