Send a thank-you note immediately. E-mail is fine for this and has the advantage of arriving faster, but handwritten notes are still appreciated (and are increasingly unusual so will stand out). And if there are multiple interviews, send a thank-you note each time.
Find out their timeline. Hopefully, you asked about their timeline in the interview itself, but if you didn't, follow up within a week to reinforce your interest and politely ask what they expect their timeline for a decision to be.
Be enthusiastic—but not desperate. Most commonly, job seekers are too worried about looking desperate. It doesn't look desperate to express your interest in the job or check in to ask about the timeline. However, enthusiasm does cross the line if you are calling more than once a week, calling earlier than the date they said they'd get back to you, sounding like you're eager to take any job as opposed to this one in particular, or appearing as if this is the only option you have. (And if you do truly feel desperate, ask yourself what a candidate who felt confident about having sufficient options but was particularly interested in this position would do—and do that.)
Don't be alarmed if you don't hear from them immediately. The hiring process often takes longer than a candidate would like, for all sorts of reasons—the decision makers are out of town, scheduling conflicts have delayed a final interview, or the company bureaucracy that is required to finalize an offer takes time to work through (not necessarily a great sign about the work environment, but that's a different topic), and so forth. Nerve-wracking, yes, but don't read too much into it.
When you don't hear back after they said you would. If you're past the time they indicated you would hear something, this isn't necessarily cause for alarm. Hiring often ends up taking longer than anticipated and other priorities can intervene. Just politely follow up, explain you're very interested but understand that hiring can take time, and ask if they have an updated timeline. It's completely legitimate to ask this; employers assume you have other balls in the air and need to be able to plan.
When you don't hear anything, even when you call or E-mail. Increasingly, some companies are simply not getting back to applicants after interviews. It's inexcusably rude, especially when the candidate is actively seeking an update. If this is happening to you, be more explicit, saying something like, "Would you let me know when you expect to be making decisions? I'm extremely interested in the position, but I'm talking with other companies as well, and hope to get a better sense of your timeline." If you don't hear anything back after that, move on—that's really all you can do. If they resurface in a month with an offer, you'll have to evaluate at that point whether it's even a company you want to work for. And if they don't—well, perhaps bullet dodged.
Juggling other offers while waiting to hear from your first choice. If you suspect you're about to get an offer from another company, tell your first-choice company that you're expecting another offer but it is your first choice, and ask if there's any way the company can work with you on the timeline. You may be surprised how often this can speed things up if it is interested in you.
And speaking of other offers—keep your job search going throughout the waiting period. No matter how well your interview went and how interested the company seemed, until you have a firm offer in hand, you have to proceed as if you don't. So keep setting up those other interviews!
Alison Green is chief of staff for a medium-size nonprofit where she oversees day-to-day management of the staff as well as hiring, firing, and staff development. She is working with the Management Center to coauthor a book on nonprofit management. Her writings have been published in the Washington Post, the New York Times, Maxim, and dozens of other newspapers. She blogs at Ask a Manager.