I've got mixed feelings on this.
My ex-husband was convicted of a felony. It will follow him forever. He lost his federal job, will lose his VA compensation (should have lost it a year ago, but their system is slow), and will probably never be able to get a security clearance or gun permit again. It was a serious crime, and he knew the consequences. I don't think that should be dropped after a period of time.
A young man who grew up in our church got involved in drugs and a gang as a 17 year old. As part of a gang situation, he was involved in a nasty drug deal. The people he was with shot the buyer and shoved him into his car. They "made" this kid torch the car by threatening his girlfriend and her baby. He went straight to the police and turned himself in. He straightened his life completely out, but was just convicted of two counts of murder (it happened 3 years ago). In my mind, this would be the situation where maybe clearing his record should be considered. Yes, he should pay some penalty. But the threat he was under, and his actions in cooperating with the police over the last three years (they broke up this gang completely with his cooperation) make a statement.
I guess my bottom line opinion is: there is a process to expunge your record. It should be more clear cut and fairly applied than it is, but that's a different question.