That's very nice to think about but in the real world if people don't match some exact keywords they get thrown away.This isn't the "real world" you're referring to here -- it's the fin-de-big-tech bubble world where everyone and their dog is not only sold, smack-down drunk on the idea that Algorithms and Data are the Solution to Your Problems. They aren't of course -- it's just a giant hornswoggle. This "world" needs to end, and it needs to end soon.
My belief is that it will. But until it does, companies that run crappy ATSs (like there's any other kind) deserve the buzzword-gurgling, keyword-dropping candidate pool get. And developers who get "rejected" by these companies should be grateful for the sublime gift of this rejection -- and for the opportunity to laser focus on companies and teams that use their heads to hire, rather than a fleet of bots.
Snark aside - hiring managers that actually read resumes (and yes, actually at least skim each and every one -- really it ain't that hard) are golden to work for (other factors being equal). Really, you don't want to waste your time with companies that have drunken the ATS kool-aid. Really you don't.
That said, however:
HR is looking for "node.js" but you wrote it like "nodejs"? Though luck pal, bye.
It's "Node.js" with a dot. If you spell it "nodejs", that's a serious red flag and you shouldn't be surprised if it gets you automatically discarded -- even by a human reviewer.
That's what resumes used to be, after all -- a kind of a take-home test where you really do have enough time (and perfect knowledge) to get everything 100 percent right. And also a test of your awareness of the fact that, yes, in critical business communications at least -- this level of correctness does matter, and it matters a lot.