Over at Final Draft, there's a great article about coming up with fitting and memorable names for your characters. Some points I thought were especially worth mentioning:
In real life a guy named Michael can be dating a girl named Michelle, or a guy named Robert might be friends with a guy named Richard, but you're writing a screenplay, and you want it to read well. It doesn't matter how engaging your story is, or how richly nuanced your characters are, if there isn't enough distinction between your characters' names, it will make it a confusing read and act as an eyesore.
Let's look at the three main characters in the original Ghostbusters: Peter Venkman, Ray Stantz, Egon Spengler. So we've go three characters whose first names all begin with a different letter. Peter and Egon both have two syllables in their names, Ray has one; and one of the names, "Egon", is an unusual name (the other two are more common). This is a good template to follow. If you were reading the script for Ghostbusters, it's likely you wouldn't have a problem distinguishing Peter, Ray, and Egon from one another.
If you character is an "every man" or "every woman", then a common name should be used. Not that Peter and Ray are the more "down-to-earth" Ghostbusters whereas Egon is the highly cerebral one whose hobby is collecting "spores, molds and fungus." His name is appropriately offbeat. From Screech on Saved By The Bell to Sheldon on The Big Bang Theory, giving the "uber nerd" or "outsider" character an unusual name is a well-tested technique.
It's good advice. I once participated in an online writing class where we had to critique each other's work. One student started all of her characters' names with the letter A. All of them. It may have seemed clever or quirky to her, but the rest of us agreed that it was distracting and made it hard to keep the characters straight.
You can check out the entire article here. It's definitely worth a read.