I'm going to say it's not the gathering materials, even the hard-to-find materials that is the issue, because I've never once had a problem finding the materials I need for the upgrades I want.
It's the Random aspect of it. It's the I-spent-the-time-gathering-these and what did I get? A 1% increase to what I want, and a 90% increase to the things I did not nature of Engineer upgrades.
It's the having to make multiple attempts for a single upgrade where the benefits are not outweighed by the offsets.
People do want "perfect rolls", and those are hard to come by unless everything is lined up just right.
If I took my rifle to a gunsmith and said "I'd like you to change out the magazine on this for one that holds more ammunition." and after working on it, it was returned weighing 20 more pounds, got three times hotter, had half the accuracy at 50 yards, and held only one more round I'd be more than just a little upset myself.
Likewise, if I took my car to a mechanic and said "Make it go faster." and when I got it back it used twice as much fuel per mile, had a racing stripe painted down it, the doors were welded shut, the frame has been replaced with lightweight tubes, a rear spoiler were installed and it only went 1 mile per hour faster, I'd be more than a little upset.
Then add to that, after voicing that I was not unhappy, these folks reworked what they had previously done, perhaps several times, charging me for their work each time, and it took dozens of attempts to produce results that were satisfactory, not only would I be questioning their competence, but my own as well for turning my equipment over to these people in the first place, and paying them for work I either did not want, or work that was clearly not up to par.
A rework of the upgrade system entirely would make Engineers far more useful, valuable, and painful.
IF, for example, I want a Grade 4 Frame Shift Drive upgrade, I can see that that upgrade has the following:
PRIMARY EFFECTS
MASS: 10% to 25%
INTEGRITY: -6% to -15%
POWER DRAW: 5% to 14%
OPTIMISED MASS: 11% to 31%
So a gain in mass of 10-25% (a drawback)
A decrease in integrity of -6 to -15% (a drawback)
An increase in power draw of 5-14% (a drawback)
And an increase of Optimized Mass of 11-31% (the benefit that increases my jump range, which is what I want).
Rather than simply having these values generated by a roll of the virtual dice, it would be much better if we actually had some input on how these were determined.
Rather than just showing us the Potential Outcomes and letting the sliders dance up and down the scales, let us grab the slider we want to modify, in this case, the Optimized Mass and move it.
As we move that slider, the drawback sliders could then move on their own. So if I pull Optimized Mass all the way to 31%, I'd expect to see a 25% Mass Increase, a loss of 15% integrity and an increase in Power Draw of 14%.
Perhaps I decide I can live with this, and tell the Engineer "Ok, do it".
At that point, Secondary Effects are randomly generated.
I come up with -8% Mass, +6% Integrity, -6% Power Draw and no special effects, because FSD's don't have those yet.
I Keep my 31% Optimized Mass, but my module mass ends up +17% heavier, looses only 9% of its integrity, and draws only 8% more power. Yay, I "win".
Perhaps I wasn't so lucky.. instead my Secondary Effects read:
-10% mass, +2% Integrity, -4% Power Draw, -4% Optimized Mass
So I end up with a drive that has 15% more mass, 13% less integrity, draws 10% more power, and yields an Optimized Mass of 27%, rather than the 31% I was aiming for.
This would be vastly better than what we currently have, because at least at this point I have some say in what I'm looking for in my modifications, rather than just saying: "Here's my ship's systems, have fun."