A person doesn't "pay his debt to society" by going to prison; he costs society thousands of dollars a year for his living expenses while there. "Society" doesn't profit by sending people to jail; it performs an unpleasant task necessary to protect itself.
In my opinion, violent criminals and others who committed serious crimes (such as burglary) should never be able to get their records expunged. We can't keep people in prison as long as they could possibly be a danger, and society needs to have a way to evaluate the potential risk of hiring a person. The main use of expungement should be so people can remove smaller things that happened while they were young and stupid, such as drug posession and small property crimes. A person should have to show years of good citizenship to get anything expunged.
I agree that people do make mistakes when they are young.
However, there are also people who are life-long career criminals. If you remove records of what they did in their youth, it makes later crimes seem to be aberrations instead of a life-long pattern of criminal behavior.
I have no doubt that instead of using this as a "second chance" most criminals will use it as a fresh start to get away with future crimes by claiming this was their "first offense".
Rather than expunge records, I would favor an asterisk or other such note be put on record showing the age of the defendant. The police and the public need to know all the facts so they can see a pattern of change or criminal life-style.
The only way to protect the public is to give them the facts they need to protect themselves.