This thing might have been answered several times but still I cannot understand why do we need a hardfork when softfork is available, aside from that, is it really necessary that a hardfork is needed In order to upgrade bitcoin features? Sorry for being so noob about this but I do believe that there is a strong reason why these exchanges are so against the hardfork.
though soft methods are available. where by the pools get to vote.
nodes matter. if there are not a good amount of nodes validating the data diversely than data could be corrupted by one party saying "follow me" and non validators blindly accept them. this is a risk
nodes are important. and we should not aimlessly let the node count be turned into a TIER network of one brand setting the rules and other brands playing pass the parcel of data its not checking.
Since you said that nodes matter, I do think Bitcoin Core had been fair here by bypassing node voting since as far as I can see majority of nodes support/uses Bitcoin Core features. If they use it (letting node vote than miners) the possibility of Segwit being implemented is bigger than letting the miners to vote for the implementation. (That is if I understand it right)
aside from that, is it really necessary that a hardfork is needed In order to upgrade bitcoin features?
No. Well, some things can't be done with a soft fork but there aren't any planned hard forks that 'upgrade' existing or add new features.
I get this as Bitcoin Core believe that hardfork is not needed for the added update / upgrade for the Bitcoin features regarding scaling issue of Bitcoin. I also read that even with implementation of Segwit the onchain spam won't be solved is that true?