Special roles don't need to be noobtraps,
...
If the lack of noobtraps makes your game un-fun
Maybe we should clarify what we both mean by "noobtrap"?
IMHO it's a unit that has way to high cost for its usefulness under all circumstances or is utterly useless. So sth. only a noob would waste resources on and any experienced player knows to not use it.
With "
possible noobtrap" I mean a unit that you have to know how to counter and that
seems(!) overpowered else. That's true for a few units in BA and this learning curve is part of the fun. After > 1000h ingame, sometimes I am still surprised by new tactics / use of units. If I would immediately know the perfect counter for any unit or could counter effectively all units with any other unit / tactic, this would make it more unfun for me.
If you consider as "noobtrap" any unit which you can only be countered by specific other units / tactics, then to get rid of this type of "noobtrap" there's a good chance that units become more equal and special roles will be watered out. IMHO, less long term fun of the game.
Snipers being hard to spot is part of their role. But still they are fairly easy to counter if you know how and scout - if you don't scout, you have a good chance of loosing anyway and snipers are not your worst problem.
If players are half experienced, snipers are hard to use effectively as it is already. If you haven't spotted them before by scouting: you hear the plop (repeat: which IMHO should be louder), you scout, you take a few cheap fast(!) units -of which you will loose some- or aircrafts and destroy them.
If shots would be visible, then you could easily kill them with any long range without even scouting (Sniper=very slow unit and not much health -> good chance if you just shoot at position of last sniper shot origin).
So I stay with my opinion: make the sound more obvious, leave shots invisible.