E.J.
If your son has health insurance contact your local mental health agency and have him evaluated by a psychologist. Specifically state that he is having difficulty maintaining a job, and you are concerned about cognitive abilities and emotional maturity. Make sure they know his history of ADD.
This is a psychological evaluation, not an evaluation for therapy. They are very different evaluations.
If he does not have insurance call your township and the will refer you to the community agency that has a sliding fee payment.
This evaluation will give you a much better idea of where he is cognitively, emotionally, and if or what type of job is best for him. Having realistic expectations of your son's abilities is best for everyone and will give everyone a better understanding of what he is going through.
Best of luck to you.