Make shairport-sync wait until all services are started before launching. Leave the sleep command in, but comment it out. (Note, if you're updating your existing init script, run `sudo insserv shairport-sync` after making the changes in order to have the startup sequence correctly reconfigured.)