Waste of money is my opinion. Many of those SEO "experts" who guarantee you a top link placement in 4 weeks are going to rank your site on uncompetitive terms no one will ever use to find you anyway, because it's easy to rank on keywords with little or no competition or interest. That doesn't mean you will stay there once they do get you a ranking or that a ranking on that relatively unpopular keyword will bring you any traffic to speak of.
To keep your site ranking well, you either have to be constantly tweaking or have lots of content so you have more pages that have a chance to rank. So if you want them to keep tweaking it, it's going to cost you more than the initial $800 or whatever it is they charge. That's just the hook to get you in the door.
Many of these firms also use blackhat techniques that have the potential to get your site banned completely a few months later or a year down the road when the search engines catch on, you can count on it, they will sooner or later. So thoroughly check out the firm you are considering using, and ask them about how they plan to get you this guaranteed ranking. And you better at least know enough to be able to tell if what they are planning to do is going to get you in trouble or not down the road.
A lot of firms will give you temporary links on sites they've created especially for that purpose or even unknowingly (to the owner) on other websites they handle. Then later after they have your money and some time goes by, they will unlink you and do the same again with someone else, or the search engines will find out their network is just a link farm and ban the whole thing, including your new site that was involved with it.
There are so many factors that affect rank, I don't think it is possible to guarantee anything on any competitive keywords. Definitely not for the long haul.
When I do hire someone to do a job for me, I usually already know how to do what I want them to do myself, but it's cost effective for me to farm that job out. If I don't know how to do the job, I have no way of knowing if they know how to do it correctly, either.
My advice is learn to do it yourself, and use whitehat techniques, and you will come out far ahead in the long run. Do a search for "SEO tutorials" on any search engine and you will find lots of help. But don't take what anyone says as gospel, read enough to verify that what they are saying is the popular opinion. And enough to know the difference between blackhat and whitehat techniques. The very first place to start is at
http://www.google.com/webmasters/guidelines.html
And if you understand how to optimize your pages for search engines, that will help you when you write your articles in the first place, because you will already know where you need to to put things and how to crosslink to get a good ranking.