Anteriormente jugó con los Arizona Diamondbacks, Toronto Blue Jays, Tampa Bay Rays, New York Yankees, Boston Red Sox, Baltimore Orioles, Atlanta Braves y New York Mets.
[2] Durante el receso de temporada, aprendió a jugar en la segunda base con el entrenador Glenn Hubbard.
Inició la temporada 2007 como el segunda base titular y el primer bateador en la alineación.
[3] El bajo rendimiento ofensivo de Johnson motivó al mánager Bobby Cox a alternarlo en la segunda base con Yunel Escobar.
Con Escobar nombrado como campocorto titular, Johnson retomó el puesto de segunda base a tiempo completo para el 2008.
Conectó de hit por 22 juegos consecutivos, la racha más larga en la temporada para la Liga Nacional.
Finalizó la temporada con promedio de .287, 12 jonrones, 69 impulsadas, 86 anotadas y 11 bases robadas.
Este patrón se asoció a un swing menos agresivo, lo que pudo afectar su pobre rendimiento en 2009.
Fue titular 50 veces en el jardín izquierdo, compartiendo la posición con Matt Joyce y Sean Rodríguez.
[10][11] Johnson jugó solo diez juegos con los Medias Rojas, bateando 4-25 (.160) con un doble y una impulsada.
[15] En su primer juego con los Mets, conectó un sencillo, un doble y un jonrón en la victoria 15-2 ante los Dodgers de Los Ángeles.