Charles has had roles on stage and screen including Our Town and A Month in the Country with the Soulpepper Theatre Company in Toronto. Television credits include appearances in Lifetime's At Risk, Disney's Camp Rock 2: The Final Jam, Global's Bomb Girls, MuchMusic's The LA Complex, BravoFACT short film Miskate, CBC's Murdoch Mysteries and a pilot episode for a new CBC family Drama Port Hope. He has also appeared in a number of national commercials including, a career highlight for him, working with Jarome Iginla, captain of the Calgary Flames, on a ScotiaBank commercial.