1651–1653 studerade Gordon vid jesuitkollegiet i Braunsberg (Tyskland). 1655 gick han i svensk krigstjänst och deltog sedan i polska kriget. I slaget vid Varszawa tillfångatogs han av polaker och övergick i polsk tjänst. Sedermera drog Gordon den ryske ambassadörens uppmärksamhet till sig och 1661 ingick han i rysk tjänst som major. Snart blev han överstelöjtnant vid Crawfords regemente. 1665 befordrades han till överste.