As an instructor and experienced IntelliJ IDEA user (some might say fanatic), I'm often asked about the plugins that I use. To be honest, I don't use a lot of plugins, I find myself mostly focused on improving the quality and testability of code by using IntelliJ IDEA's powerful automated refactorings, along with its Live Template and Postfix features. However, there are some very useful plugins that are "standard equipment" for me when I install it on a new machine. Note that I use many of the built-in plugins from JetBrains that I'm not including in this list.
For better or worse (I think worse, but that's a separate rant), Git is the de facto standard for version control. IntelliJ IDEA's support for Git is great, but the plugin GitToolBox makes it even better. I rarely find myself using Git from the command line anymore, which I'm very happy about.
I love drawing diagrams, but I hate using visual drawing tools, because I spend so much time fiddling with the little things. I've been using PlantUML for years to draw sequence, class, and state machine diagrams by describing it in a text file. Having it as a plugin in IntelliJ IDEA makes it that much more valuable.
Pretty much what it says in its description: "shows name and Win/Mac shortcuts of any action you invoke". As an instructor and live coder, I always have this installed and activated. I like how it shows both the Mac shortcuts (I use a Mac) as well as the Windows & Linux shortcuts so those who are watching can learn the shortcuts for their platform. It's also helpful when I'm writing how to use the shortcuts since I don't have to search for the shortcuts for the other platforms, I just hit the keys and Presentation Assistant shows me the keys for Windows/Linux.
The holy grail of synchronous editing of a project by multiple people has not quite been solved, but of the tools I've tried out (Floobits, CodeTogether, Code With Me, and GitDuck), Floobits has come closest to what I want: the ability to use the full power of IntelliJ IDEA, and let the other people use whatever tool they want. It's not perfect and sometimes things get out of sync or just don't sync in the first place, but when it works, it's great. In the Mob Programming groups that I lead, though, I have shifted to using mob.sh as it's much more reliable.
Last and, yes, least, is SonarLint an open-source project. It's not that it's not a powerful tool (it is), it's just that I find myself constantly telling it to stop bugging me about things that I turn it off when teaching, and then forget to turn it back on when I'm just coding. Perhaps some more fine-tuning would get it to the right level of nudging, but I'm not there yet. However, it has saved me from some silly mistakes, so it's worth installing and trying out.
What plugins do you find indispensable? Let me know as a comment below, or on Twitter, where I can be found as @JitterTed.