Amerykanin jest absolwentem uczelni Indiana Purdue Fort Wayne. Później grał w D-League, Wenezueli i Włoszech (Juvecaserta Baskets, Victoria Libertas Pesaro). Ostatnio występował w lidze portorykańskiej w zespole Caciques de Humacao. Tam zdobywał średnio 25,1 punktu, 4,3 zbiórki oraz 1,6 asysty na mecz.
Gaines ma za sobą grę w Lidze Letniej NBA w drużynach Brooklyn Nets i Oklahoma City Thunder.