Fernández begon zijn carrière bij het Peruviaanse Universitario waar hij op 31 juli 2005 tegen Unión Huaral zijn debuut maakte. In december van 2010 tekende hij bij het Franse Nice. Vervolgens werd hij voor een half jaar verhuurd aan zijn oude club, Universitario. Op 19 november 2011 maakte hij tegen Saint-Étienne zijn debuut in de Ligue 1.[1] Na slechts twee gespeelde competitiewedstrijden bij Nice tekende hij op 10 januari 2013 bij het Amerikaanse FC Dallas. Daar maakte hij op 3 maart 2013 tegen Colorado Rapids zijn debuut. Hij speelde in zijn eerste seizoen bij FC Dallas in zesentwintig competitiewedstrijden.[2] Daarnaast startte hij in de basis in de MLS All-Star wedstrijd tegen AS Roma.