Шахин ја започнал својата фудбалска кариера на возраст од 6 години во малку познатата екипа РШФ Мајнерцхаген. Откако поминал седум години во овој клуб, во 2001 година рој потпишал професионален договор со Борусија Дортмунд во 2001.[2]
Борусија Дортмунд
На 6 август2005, со 16 години и 335 дена тој станал најмладиот играч кој заиграл во Бундеслигата, а на 26 ноември истата година станал најмлад играч кој постигнал гол во натпревар од Бундеслигата, во победата на својот тим над Нирнберг.[3]
На 5 јули2007, Шахин заминал во Фејенорд на едногодишна позајмица, каде повторно соработувал со Берт ван Марвајк својот поранешен тренер во Борусија.[4]
По враќањето во Борусија, под водството на Јирген Клоп, Шахин станал важен играч на тимот. Тој одиграл 33 од 34 натпревари во Бундеслигата во сезоната 2009-2010, со учинок од 4 гола и 8 асистенции[5] Следната сезона, тој бил една од клучните фигури во тимот на Борусија Дортмунд кој ја освоил Бундеслигата. Својата одлична сезона како на клупски така и на поединечен план, во која постигнал 7 голови и имал 8 асистенции, Шахин ја крунисал со освојувањето на наградата за најдобар играч на Бундеслигата во 2011.[6]
Реал Мадрид
На 9 мај2011 после повеќенеделни шпекулации, Шахин го најавил своето заминување од Дортмунд на прес-конференција на Сигнал Идуна парк. Тој потпишал шестогодишен договор со Реал Мадрид.[7] Тој изјавил дека главната причина за заминување од клубот бил Жозе Морињо како и шансата да игра за таков голем клуб како што е Реал. Своето официјално деби го имал на 6 ноември2011, влегувајќи како замена во победата на својот тим од 7-1 над Осасуна.[8] На 20 декември2011 го постигнал својот прв гол во дресот на Реал, во победата над Понферадина со 5-1 во Купот на Шпанија.[9] На 27 март 2012, тој започнал во почетните единаесет против АПОЕЛ во четвртфиналето на Лигата на шампионите, а неговиот перформанс подоцна после натпреварот бил пофален од Мурињо и разни спортски весници. Сепак, тој не успеал да се наметне во Реал Мадрид во својата прва, а ќе се покаже и единствена сезона забележувајќи само 10 натпревари и 1 гол.
Ливерпул
На 25 август2012, Шахин заминал на едногодишна позајмица во Ливерпул.[10] Шахин го добил дресот со број 4. На 2 септември2011 го имал своето деби во Премиер лигата, во победата на својот тим со 2-0 над Арсенал. На 26 септември2011 ги постигнал својте први голови (два) во дресот на Ливерпул, во победата со 2-1 над Вест Бромвич Албион во третото коло на Лига купот.[11] Свој први гол во Премиер лигата го постигнал три дена подоцна во победата на својот тим со 5-2 над Норич Сити.[12] Во својата петмесечна епизода во дресот на Ливерпул, Шахин забележал 3 гола и 3 асистенции во 12 натпревари. На заминувањето од Ливерпул, Шахин изјавил дека не бил среќен ниту во Ливерпул ниту во Реал,[13] и дека среќен е единствено што добил шанса во својата кариера да игра во исти клуб со Стивен Џерард.[14]
Враќање во Борусија Дортмунд
На 14 јануари2013, Ливерпул објавил дека го раскинале договорот за заем на Шахин со Реал Мадрид, и дека Шахин бил слободен да се врати во Борусија Дортмунд на заем до крајот сезона 2013-2014.[15] Тренерот Клоп исто така бил воодушевен со неговото враќање во клубот.[16] Своето деби во Бундеслигата по враќањето го имал, на 19 јануари 2013 влегувајќи како замена во 84-тата минута, во победата на својот тим со 5-0 над Вердер Бремен.[17] На 16 март2013 Шахин постигнал два гола во победата на својот тим со 5-1 над Фрајбург.[18] Првата полусезона по враќањето кај милионерите ја завршил со 18 натпревари и 3 гола во сите натпреварувања.
На почетокот на сезоната 2013-2014, на 27 јули2013 Шахин го освоил Суперкупот на Германија, откако Борусија го победила Бајерн Минхен со 4-2;[19] Шахин го одиграл целиот натпревар. На 26 октомври 2013, Шахин постигнал гол во победата над големиот соперник Шалке 04 со 3–1.[20]
На 10 април 2014, Борусија Дортмунд ја активарала клаузулата во договорот на Шахин со која им било дозволено перманетно да потпишат договор со играчот за сума од 7 милиони евра.[21]
Вердер Бремен
На 31 август 2018, во последниот ден од летниот трансферен прозорец 2018, Шахин потшишал за Вердер Бремен.[22] Според извештаите на медиумите, тој потпишал двегодишен договор со клубот како слободен играч.[23] Своето деби за зелено-белите го имал на 16 септември 2018 во ремито 1-1 против Нирнберг на Везерштадион, влегувајќи во игра во 71-вата минута на местото на Филип Баргфреде.