Be careful hiring any SEO "consultants or companies", a lot are scams. You'll know by the promises, i.e. "top rank by Tuesday!" "Submitted to a 100 million search engines!" and so forth.
The first way is to make sure your site is designed right. No duplicate content, proper robots file, appropriate site layout, perhaps a sitemap that bots can find that is pointed to in your robots file. And though controversial these days, it doesn't hurt to drop some proper meta tags for site description and so forth.
Second, proper code, use alt tags, give links descriptive names that match the content they are linking to. Use as much text as possible rather than images, as the words "my cool stuff" in an image can't be seen by a bot, but real text can.
Third, don't cheat. Don't keyword spam your own site, put white letters on white background to try and "hide" keywords, you'll get punished. Review the criteria that Google and other search engines have available that tells you what not to do to get punished.
Fourth, drive traffic to your site, get your links on other sites more popular than your own if you can. Bloggers and the like. Search engines will like you better if higher ranking sites link to you.
If possible, one or more of your primary keywords should be in your domain name. If two people sell pizza, then "bobsgoodfood.com" will likely rank lower than "