FSMs are great for controlling logic flow and managing conditional logic or other complex tasks like AI systems.
You could use it for anything from quickly throwing together a door open/close/lock manager to compiling an entire AI system across several FSMs running concurrently.
You could use it for everything in the whole game, but since you're comfortable coding I'd say just get familiar with it and decide which facets you want to use it for in your game. Most coders like supplementing their own designs with it and prefer to use their own code for certain things, so its just a matter of finding which parts your want to do that with. You can also make your own custom actions pretty easily, for instance making an action for an AI controller and putting it in an FSM with exposed variables you can share between other FSMs or your scripts quite easily.
Its really up to you though, find where it improves your personal workflow and go from there.