So many people disagree with me on this, but Severus Snape is an unredeemable character. Hold out on my arguments and you'll agree: Harry Potter was silly to give his child a name in honor of Severus. (Albus Severus Potter? After one of the "bravest men" he ever knew? I don't think so.)
Let's start back when Harry's parents were students at Hogwarts, when Severus had a massive crush on Lily Evans. Unfortunately, Severus was bullied severely by James Potter who eventually won the heart of Lily. As upsetting and disconcerting it is to be subjected to cruel harassment and the loss of valuable friendships, it is no excuse for rude or inappropriate behavior.
This is exactly when Severus turns to in adulthood, harboring his resentments from years past and taking out his anger and unresolved traumas on mere children. He repeatedly verbally abuses Harry, using a child as a punching bag with which to grapple with the bullying Harry's father subjected Severus to years ago. While bullying Harry from a position of authority, Snape manages to still harbor feelings for the long-dead Lilly Evans Potter. These feelings are his only motivation to ever act in a congenial manner towards Harry, not genuine kindness or apology for his actions.
While it is easy to argue Snape's abuse of Harry away by pointing out his fathers' constant bullying, there is no excuse for the teachers' treatment of other students, particularly Hermione Granger and Neville Longbottom.
Snape picks on Hermione solely because of her appearance and "mudblood" status. Despite her intelligence and eagerness to learn, her teacher makes fun of her and mocks her desire for knowledge only because of her non-wizard parents.
Similarly, Snape picks on the fragile Neville, despite the traumas he faced as a child, simply because he is a little odd and anxious. Snape does this to the point where the thing Neville is most afraid of, as displayed by the boggart in The Prisoner of Azkaban, is his teacher, Snape.
Finally, Snape's motivation to do good does not stem from his desire to be kind or helpful, it stems from a want to please the deceased Lilly Evans Potter. He acts, not to help the children he is employed to teach, but to find some solace in his loss of unrequited love.
No person in a place of power gets to abuse it by harassing children, no matter how much trauma they have faced in their past. Maybe the Harry Potter books should have featured wizard therapy so that Snape could handle his many issues with a trained professional, not his students. (But, JK Rowling, you don't get to state that it did exist after the fact like you did with Albus Dumbledore's sexuality, that's not how writing books works.)