Uglies by Scott Westerfeld

Tally Youngblood
Like almost every 15-year-old, Tally just wants a normal life– she wants to turn 16, get pretty surgery, and party all night with her friends. Her life takes an unexpected turn when she meets Shay who makes Tally reconsider what's "normal."

Shay
Shay is a lot like Tally in some ways: they're both alone, they're both around the same age, and they both like breaking the rules. But while Tally wants to be pretty, Shay wants to rebel against the whole system.

David
David is a born rebel. He is an ugly who was born in the Smoke to two runaway doctors. His main job is to get other uglies from the city to come to the Smoke. He catches Shay’s eyes, but the feeling isn’t mutual.

Dr. Cable
Dr. Cable is a clich-type of villain. She has no “good” qualities. She blackmails Tally into going to the Smoke. And along the way, Cable lies and insults Tally. Even as Pretties, people know that she’s a monster.

Peris
When Peris and Tally were both uglies, they used to play all sorts of ugly tricks, like breaking into New Pretty Town and causing a riot, or simply spying on the Pretties. He used to be independent, but now he’s just a shallow, boring Pretty who cares about what he’s wearing.