It's also worth noting that there is some movement towards preventing businesses from asking about convictions until after a conditional offer has been extended, and then putting some burden on them to demonstrate relevance before they rescind the offer. (So, under that rule, someone whose felony was embezzlement can be rescinded from a bank job, but a pot conviction shouldn't matter for a programming position.)
See http://bantheboxcampaign.org/ and e.g. http://www.huffingtonpost.com/2013/05/08/ban-the-box-minneso... , among others.