Or control systems (which is remarkably similar to game programming, really). Basically anything that needs to model on control a system which changes state over time. Sometimes it gets a bit too much, though, and people start seeing every task as a nail for a state-machine hammer.
Any such state model is not the actual thing it models (which is almost always stateless continuous time) therefore extremely annoying to work with. Also a source of bugs and concurrency issues.
network protocol as well, hell, any non-toy network application ends up containing a state machine either implicitly or explicitly
As someone who troubleshot networking issues for years, god bless you.
Gesture detection/interaction here. All state machines all the time.
Life cycle management, process synchronization, lockfree data structure, user-space networking... I can't remember the last time I didn't use a state machine.
VHDL/Verilog as well, but that's completely obvious.
I've been using state machines for Javascript UI elements.. really simplifies things.
This. When I was learning to code by making games I was making state machines without even knowing the definition.