Content writing
This is probably the single most important thing you need to do if you want to be found on the web. Even if your site is technically perfect for search engine robots, it won't do you any good unless you also fill it with good content. Yes, really!
Good content is text that is factually and grammatically correct, though that is not necessarily a must for all kinds of sites. Whatever your site is about, the content needs to be unique and/or specific enough to appeal to people. More specifically, it needs to be useful to the people you want to find your site.
Good content brings return visitors. Return visitors who like your content will eventually link to your site, and having lots of inbound links is great for search engine rankings, especially if those links are from highly ranked sites.
Closely related to good content is fresh content. By adding new content regularly, you give visitors a reason to come back. Search engine robots will also visit your site more often once they notice that you update regularly, which means that any new content you add will be indexed quicker.
If you write in English, you are probably aware of the differences in spelling between American and British English. Colour vs. color, optimisation vs. optimization, etc. There are also many words that are commonly misspelled (this goes for all languages).
By making your page titles simple, yet descriptive and relevant, you make it easier for search engines to know what each page is about, and people scanning through search results can quickly determine whether your document contains what they are looking for. The page title is also what is used to link to your site from search result listings.
Because of this, the <title> element is one of the most important elements on a page. Some argue that it is the most important element.
Use the <h1> - <h6> elements for headings. Using graphics for headings may let you use any typeface you want, but search engines aren't going to pay much attention. Even if you (as is required) use the alt attribute to specify alternate text for heading images, that text will not be anywhere near as important as real text in a heading element. In my experience, this is true even if the images are inside heading elements.
If you cannot use real text, look at the various image or Flash replacement techniques that are available. Be aware that there may be a tiny risk involved in doing so. Since image replacement techniques involve hiding text, it is theoretically possible for search engines to penalise you.
Some search engines use the contents of the meta description element to describe your site in their search result listings, so if possible, make its contents unique and descriptive for every document.