En los Juegos Olímpicos de Londres 2012 fue medalla de plata en los 100 metros libre con un tiempo de 47,53 segundos, quedando a tan solo un centésima del ganador, el estadounidense Nathan Adrian (47,52 s).Además, ganó la medalla de bronce en el relevo de 4×100 metros estilos.