How do you make the inhouse vs outsource decision for SEO? On one hand we know we need to focus on a small group of keywords and produce lots of really good, user focused content. On the other hand, seems like a lot of behind-the-scenes expertise that we don't possess in house. Any thoughts would be appreciated.
It depends on the strategy you're going to pursue. If you plan to put out lots of SEO-friendly content through a blog, overhaul your site's copy (and tweak over time to refine), run ads, keyword analysis, and all the other daily (or at least weekly) maintenance that needs to be done, it may be worth hiring someone in-house.
Otherwise, you may be able to find a contractor with a stellar track record to do the heavy lifting of initial setup and optimization, then pay to train someone in-house to manage the critical ongoing pieces and/or bring the consultant in for quarterly/annual check-ins.
In both cases, do your homework and verify results. SEO is confusing, and there are some less-than-noble types who specialize in smoke and mirrors (or short-term gains that hurt your rankings long-term) rather than results. Define what you're after and find people who can demonstrate that they've made that same kind of impact for former clients. Reach out to the clients to verify the results. Be thorough and make sure you're not hiring someone who will ultimately damage your ranking by pissing off Google or trying to game a system that's becoming increasingly difficult to game.