Extract method to wait on children.

getting #work to be reasonable is going to take a lot of work
Extract process_job method

This is to try to break up #work. It's only a start.