The world of computers is full of things to learn about, more than almost any one person could learn in a lifetime.
People usually learn about what interests them, or what they need to know. It's entirely possible to be an accomplished programmer and never really learn big-O notation just as some programmers never learn assembly or C.
Think about it differently, big-O wasn't widely discussed or well known until the 1970s, thanks to Donald Knuth who popularized it. Then consider that many programmers who learned programming may have done so before it was widely known and some may have learned programming from those same people.
Are those programmers from roughly 1980 and earlier any less a programmer because they weren't aware of or didn't use big-O notation? Of course not.
Is big-O notation something most programmers should consider learning? Yes. But we should not seek to exclude others from a profession simply because they don't meet arbitrary criteria we think is necessary when they are clearly already actively engaged in that profession.
You pointed out exactly how someone would not know -- they may have never taken computer science classes and taught themselves programming.
Or they may have taken some CS classes, not enough to have covered that particular concept.
I'd guess that, especially for older programmers, anecdotally, it's not uncommon to not really understand or use it.
I don't care if you're self-taught, it's audacious to even call yourself a programmer if you don't know the very basics of algorithms and data structures.
Just because someone doesn't use the same terminology to describe a set of concepts doesn't mean they don't understand those concepts.
Also, I wasn't aware there were were formal qualifications for someone adopting the title of "Programmer", pretty sure big-O notation isn't part of the dictionary definition.