in reply to
Net::Telnet: remote job completion
It might be easier to modify the scripts such that they don't run in the background (though that of course depends on what exactly they're doing...). In this case, you'd only have to wait for the prompt before starting the next script.
The other option (untested — as I have telnet service disabled here) would be to run tail -f (like you're doing interactively) and use waitfor() to scan for the "FINISHED" line in its output. Some tails also support a --pid=<PID> option (in combination with -f) to have it automatically terminate when some other process (PID) dies or completes.