I enjoyed this talk along the same lines by Guy Steele, regarding not necessarily forcing a sequential solution to a non-sequential problem:
Four Solutions to a Trivial Problem - Guy Steele Jr.: https://www.youtube.com/watch?v=ftcIcn8AmSY
Look for steps that are commutative and/or associative in the problem to exploit parallelism.