While it would be wonderful if there were an across-the-board answer that solves this problem, the truth is that the answer to this question will be different for every different company.
SEO (which stands for "search engine optimization") is the process of causing your website to appeal to search engines - and there are actually people who are "SEO experts," and who make a living doing SEO work for different websites; the good news about hiring one such expert, of course, is that they are able to quickly carry your website to the top of search engine rankings pages, but the bad news is that they often charge an arm and a leg to do so!
When trying to figure out whether or not you should hire someone to do your SEO work, the main thing you need to determine is which has more value for you: your time or your money. For some people, it will be worth the money they save for them to study up on SEO themselves, and to build their website on their own; on the other hand, there will be those who will lose more money in the amount of time it takes them to learn and implement all this stuff than the money they would pay someone else to do it - in which case, it is well worth hiring out!
Of course, it doesn't really matter how you get to the desired end result (that is, a website that ranks highly on search engines) so much as it matters that you get there somehow - but with this knowledge, you can decide whether you want to get there on your own or hire someone else to help.