Part of the issue is the 'one size fits all' aspect. Yes, when you pick up missions the NPCs are tougher but if that's due to better AI or better outfitting seems to depend on the time of the year and the mood of the forum.
What's missing, IMHO, is the more dynamic aspect of NPC difficulty depending on the environment (and not so much on your cargo or your combat rank). We already got different res zones and different combat zones. What's needed is tuning up the AI skill in the those zones supposedly more dangerous, while keeping the AI easier in other areas. Now add system type (government, security, etc) and make that influence the AI as well, add a bit of RNG (the whole game is a RNGfest so a bit of RNGing here won't harm) and the experience would be better.
Want to have a tough fight? Go to a high res zone or an anarchy system. Want to start training? Low res in a democracy. You get the picture- there's loads of things that can be done. A requirement is that NPCs don't depend on your rank or cargo, otherwise Elite players will always end up with ultra hard NPCs regardless. RNGineer mods on ships is a total different story.
I do believe that SJA has the AI 'skill' well under control, as the different iterations and evolution of the combat AI illustrates. A more differentiated approach to let the player truly chose their combat risk is needed. Oh, and this would make trading a bit more interesting, too- suddenly long-range trading runs make course plotting a lot more interesting as you might not want to have a long chain if lawless and anarchy systems in your path....