It amazes me as a website designer / programmer, how many websites are built with little or no SEO and often the small amount of SEO on the website can even be detrimental instead of helping. SEO (search engine optimisation) is a technique that includes a number of different elements that if done correctly will help improve the ranking position of your website on the search engines such as Google, Bing and Yahoo.
Any programmer should be able to do the basic elements of SEO and even if someone else is going in to fill in the title tags etc the programmer needs to understand how it works to ensure that it is programmed in the correct way. For example H1 (heading one tag) should be found once on every page and above the H2, H3 tags etc. This is basically a title for a page and should be highly relevant to the rest of the content on that particular page. Google often uses this title to find out what the page is about.