Ian McAnerin, an SEO expert on the Search Engine Watch Forums, had this to say on how much HTML and technical knowledge an SEO specialist needs:
In my experience, about 60% of all difficulties in rankings are due to technical issues with coding or hosting/DNS.
Therefore, if you do not know enough to troubleshoot these two areas, you are only able to do about 40% of your job.
Ian goes on to explain why technical expertise is needed:
You don't have to be an expert, but you need to know what code is supposed to look like and what bad code looks like. How else would you tell someone to fix it?
For example, if you can't tell a link has been nofollowed, or that popups were made with unspiderable javascript, or that the CSS layout system has placed your links with bad anchor text under links with good anchor text, or that the headings in the code were made with text sizing rather than H1 tags, you would not be able to detect and fix those issues.
The examples are numerous - bottomline, it's like trying to become a translator without learning linguistics, or trying to be a programmer without knowing anything about computer hardware or the operating system. Sure, it's possible at a high level and for minor issues, but you'll never be really good unless you know the WHY as well as the HOW.
Read this full conversation at the Search Engine Watch Forums.