seo only exists because web designers create web pages which are NOT optimised for the search engines...and are pretty but with no content Debugging is the art of removing bugs from software, hence programming is the art of putting the bugs into the software....
You should know all the seo techniques, that are: 1) on-page optimization: that you can do the changes on your web-page to increase your search engine placement like optimizing title and keywords, using of heading tags, bolding your keyword etc.; 2) off-page optimization: the optimization that should be done to the links you are getting like the anchor text of the link, page-rank of the link etc. And also your website should not be involved in blackhat tactics. This technique is also applied to the website you are linking and getting links.