Jira is fine to me (as a SWE), but it's way too complex for untrained managers/PO/SM to use properly (read: to make it more useful than a simple kanban board).
Expanding on what @necovek said:
In a big company we used it, and while everything was "agile", there were very rigid processes in place (for a good reason). Those processes were properly translated and implemented into Jira. Development support teams wrote plugins to connect Jira with in-house systems and have proper synchronization with customer facing bug tracking systems, log monitoring and the like. We religiously logged time on stories, moved them accordingly, checked tasks "to review" before taking another task, and velocity and other stats were meaningful. It was still heavy for what it did, but overall helpful and I was glad to use it.
In another big company we used it, everything was "agile" too, but here it meant every team did whatever they wanted. Each SM had that role for 3-4 teams, meaning every board worked differently but sometimes close to one lowest common denominator among certain teams. Different patterns, meanings of columns, nobody logged anything, stuff had to be copy-pasted by hand to keep track of information on external systems. Velocity accuracy was all over the place, nothing meant much, except for the location of the tickets in the columns and the content inside. For which, obviously, you don't need something as heavy and slow as Jira; Jira is picked anyway because you have the chance to make it evolve into the first example. But if you don't allocate resources for that, Jira ain't going to do the job for you.