Designing state machines
I can't recommend Akka's state machines enough. It's an incredibly simple and rock solid state machines built right into the library. (<a href="http://doc.akka.io/docs/akka/snapshot/scala/fsm.html" rel="nofollow">http://doc.akka.io/docs/akka/snapshot/scala/fsm.html</a>) We're already on a Play/Scala backend so adding these was incredibly easy for us, but I think they're one of the hidden amazing features of the akka/scala world.