Search engine optimization is necessary because of the following reasons:-
The search-engines may have algorithmic limitations due to various reasons, ranging from ignorance, lack of funds to procure the patented ideas etc.
Due to such reasons, the search-engine developers may have limited abilities, to develop perfect algorithms, that judge the abilities of the facts accurately.
To be precise, a search-engine developer cannot know, practically things beyond, what is directly evident. A human is not a mind reader. He cannot know, what a person is precisely thinking in mind, while writing a particular fact. While he cannot know, he cannot write a code that accurately judges intentions. Thereby, he is forced to rely on the evidences, those that are directly available, in order to write an algorithm that judge.
While a human is forced to write such algorithms, the website developer in concern, which includes the designers, the code developers need to critically address such factors. The addressing of such factors is search engine optimization, as this is a part of the process of optimizing for search engines.
A search-engine developers in concern, may consider, special requirements in the code, in order to provide its users a unique experience pertaining to the results. The addressing of such factors is search engine optimization, as even this is a part of the process of optimizing for search engines.
When search engines in concern find the website relevant to its algorithmic requirements, wouldn’t it rank that suits its algorithmic requirements correctly high enough? Do they have any other way around? The addressing of the enhanced features may be a secondary requirement for search-engine developers, but as far as addressing the limitations are concerned it is a must. They developers don’t have a way around but to judge what the algorithm judges, until they manually intervene without the algorithm.