Not sure what you consider "production" but suffix arrays et al. are used fairly widely as far as these data structures go, but they aren't particularly exotic. Curious to hear about some more exotic ones though.
I use graphs because we have a case where we need to schedule actions/programs but they themselves have "ingredients" or dependencies in a wild arrangement. So a topological sort of a graph is incredible to solve this and run those actions in order.
I don't think just plain graphs with topological sorting are considered advanced data structures? The're one of the first things you learn in a CS curriculum... whereas lots of the stuff in Demaine's course is stuff that pretty much doesn't even exist in most schools.
Which one would you point out as the most useful from your point of view? It's much easier to learn that topic looking at the practical side as well as the theory.
So the Fall 2017 class has a concept of inverted lectures where students watch class videos in their own time and essentially have a "office hour" and Q&A type discussion in class.
And more from 2016: https://news.ycombinator.com/item?id=12871234
Also was posted several times with no reaction.