The real challenges started when the client began to test their application code. The first thing we hit was triggers.
The table had several insert triggers associated with the columns that were now encrypted. Since the data was now encrypted the insert triggers would fail. Again, we lucked out and they were able to recode somethings in order to remove the triggers. Of course, since troubles always come in threes, this was no different. First the constraint problem, then the triggers, then we hit the biggest road block that halted our Always Encrypted implementation.
Read on for more information about the things you cannot do with Always Encrypted, including some limitations which will eventually go away.