You can actually do several SEO by yourself
Quality and targeted link building wouldn't require outsourcing if you have the extra time to do it. Here are some ways you could do SEO for your site:
Directory Submissions - targeted links at high PR directories
Blog and Forum Postings - to high PR and frequently crawled sites
Social Bookmarking
Classified Ads
Article Marketing - submit to high PR directories, could also serve as link baits
Link Exchange - with relevant and authority sites
Link Baits - for organic linking
Etc. etc.