On the web app side, I am using the mysql2 gem and made zero changes to my code. Also, I frequently import SQL dumps from MariaDB into my local MySQL development with no problems.
The only issue I had was related to some nasty SQL I had in a select in a finder (yeah I know bad practice). MySQL was returning a 0 while MariaDB returned NULL. Either way, it was my fault for messy code and when I fixed the select, everything was good.
I have not experienced any compatibility issues with MariaDB vs. MySQL.
The bug was now been analyzed but not fixed for ~3 releases.
That said I also ran the testsuite against 5.6 and found some problems, too. You might also be concerned about http://bugs.mysql.com/bug.php?id=69274 - this means that if you loose an idb file during a crash you're out of luck to use your db ever again.
We're thus currently stuck at percona server 5.5 with regular investigation of the alternatives.
I configured the new database servers as slaves of the old ones. This enabled me to verify things in production and do a safe upgrade. Promoting the MariaDB slaves to master was the only required action in terms of switching over. No code changes were required in our application code.