After reading some posts here, and seeing first hand during many-a-consultation the amount of money people are bilked out of by SEO scam artists and site builders who knowingly have no clue what they're doing, I'm going to post a few things to keep in mind.
Nobody knows how Google works
First, and a very important foremost, I have no clue what Google does. Nobody does, except for the engineers at Google. As I have said on many-a-conference call with a prospect's current "SEO expert", when they tell me or imply that they know how it works, I ask them to send me the Google source code so I can see for myself. That's like asking a self-proclaimed Coca-Cola expert to send you their secret recipe; if you did have it, you're going to be in a lot of legal trouble. We only know what Google likes and does only from what they publicly tell us. If your "SEO expert" has an insight into Google, or knows someone at Google (I've heard that more than a few times, actually), you can be certain 100% of the time they are lying.
Do some basic research on SEO, but only stick with sources that come straight from Google and Bing. There are some popular SEO information sites, but only read those if the article sources directly back to Google and Bing. Read everything from Matt Cutts, a Google engineer who has been great about answering questions and provides insight into what Google does and likes. He also posts videos on YouTube that are pretty informative. As a developer, the topic of SEO is very boring to me, so the videos have helped.
When site owners want to generate leads and establish a presence, they want to be on the first page of the search engines. If you're on the front page, you get more clicks, which should yield more conversions. SEO scammers know this and will tell you they can do that all day long. Some will guarantee it, but they always say it will take months. When you hear this, save your money and walk away. In the SEO world, there are two types of SEO methodologies: "white hat" and "black hat". Do some research on these to understand the difference. Black hat techniques are designed to try and fool and deceive Google, and will actually end up hurting your rankings. Once you understand that nobody is smarter than Google, life is easier.
schema.org
I'm not sure about the link posting rules here because I'm too lazy to read the rules, but to summarize what those links say, Google is very clear that you need to publish original, well written structured content. Google only exists because of content, therefore they like content. They also exist as a search engine, returning relevant search results, therefore they care about structured content. As an example, is a "boxer" a fighter or a dog? All the major search engine families had a mafia boss-like meeting and all agreed to create a vocabulary called "schema.org". This vocabulary is embedded in your content to describe the content to the search engines. The search engines love this and use it to understand your content and to return your content for relevant searches. schema.org should be the DNA fabric of your content. This vocabulary was important enough for the competing search engines to come together, so your "SEO expert" should understand it and implement it. A problem with schema.org is it's technical enough that most "SEO experts" and site builders don't know how to use it or what to do with it, even if they did know what it was. Most site builders simply install a WordPress site, purchase a 3rd party theme from who-knows-where and tries to shoe-horn content into the theme. The schema.org vocabulary is embedded in the HTML of the page, so it requires an understanding of the HTML rendering. Some themes are better than others, so before you purchase one, ask the author if they implement schema.org, or if the theme can be used with a particular module/plugin.
Social Media
The search engines aren't the only search mediums; social media has become just as important. Your "SEO expert" should understand open graph, Twitter cards, and any relevant metadata that any number of social media services care about.
For sharing, the metadata helps describe what image to use, what the title should be, and what summary or description text to use. When you share, tweet, or post a product or content to social media it needs to look good and properly formatted.
An HTML5 site needs to be HTML5
HTML structures a web page for your browser to render. HTML5 helps section off a web page with new HTML elements introduced a few years ago. I don't know for a fact that the search engines care about this, but the major problem related to scams I see often involves a web-builder or theme author simply swapping out an HTML4 document header for an HTML5 header, which takes 2 seconds, while leaving the rest of the document as HTML4. The reason this is bad is because site owners pay money for an HTML5 site and are ripped off when they unknowingly get stuck with a re-purposed HTML4 site.
For site builders or theme authors, converting a site to HTML5 involves structural changes, so if you have hundreds or thousands of customers using your theme, there's a cost and support endeavor involved, so they typically just change the header line and pray nobody catches them. There's a full public discussion on Disqus I had with a large theme developer where they fought me on this, but eventually caved and correctly converted their products to HTML5. If I'm allowed to post links, I'll post it later if anyone cares to see it to give context. For "SEO experts", malformed HTML structure should be front and center, so this should never happen.
When this is articulated to a client or prospect and they understand it, I've seen on several occasions they get pretty angry for being lied to. If you paid for a renovation and just got a new paint job and were told the renovation was done, you'd be pretty upset.
Site Map and robots.txt
This one drives me crazy. A website should always have a properly formatted site map for the search engine crawlers. Why would an "SEO expert" not care about telling a search engine what to index? With the site map, the robots.txt file tells the crawlers what they can and can't crawl, and should also specify the location of the site map. When I see these missing or configured incorrectly, it's obvious the "SEO expert" isn't serious about the SEO of the site.
Conclusion
Your "SEO expert" should be focused on your content and how the search engines index your site. I understand those who are tasked with trying to figure out what to do and how to solve SEO problems, as it is somewhat technical and isn't an exact science, but don't call yourself an expert and make guarantees while charging a bunch of money if you are not adhering to SEO fundamentals. If you're a site owner and pay a bunch of money for SEO services, make sure they at least know these basics and don't just install Yoast and call it a day. A true "SEO expert" should act more as a consultant to work with your site builder or site administrator, and should pay attention to analytics and continue tweaking and refining your SEO configuration. They should also work closely with your online marketing team.
In real estate, there's plenty of places to blow money; "SEO experts" who do nothing for you, and in fact can hurt your brand, should not be one of them.
I'm sure I left stuff out and have typos, so I'll update as I catch them.