We do quite a few things to encourage creativity like hackathons, design sprints, and "Unconferences". That said, I think the most meaningful thing we do is to encourage teams to be autonomous. Having control and ownership over their respective applications gives our team members the freedom to explore ideas to solve their own problems.