Amir goes through pretty intense character development in this novel. As a young boy, he is tormented by his father's apparent disinterest in him. Furthermore, he grows increasingly jealous of his father's apparent interest in Hassan, one of their Hazara servants. As Amir fights for his father's love and approval, he betrays Hassan. This betrayal is the beginning of Amir's true character development, as it leaves him extremely guilt-ridden. Amir carries this guilt with him throughout his adolescence and into adulthood, from Afghanistan to America. He allows it to eat away at him, even as his relationship with his father improves. Finally, Amir is able to seek redemption when he is given a chance "to be good again." Amir's entire character is basically driven first by guilt (even before his betrayal of Hassan he is convinced that he was responsible for his mother's death) and then redemption, which he does ultimately receive.
amir started out very selfish in my opinion. yes he was young but he was so caught up in getting his father's acceptance that he completely passed up the chance to treat hassan as an equal. he treated him "as a servant".
once he grew older, he became much more interested in the well being of others such as his father, and soraya and everyone else around him. when he got the chance to redeem himself he couldnt pass it up.
pretty much, he just really matured as the novel progressed, as any growing person would.