Nacido en el barrio agramita de Dubrava, tanto Josip como sus hermanos Dragan and Mihael pasaron por las filas del NK Dubrava,[1] además de formar parte de la academia del Nogometni Klub Croatia Sesvete.
Su debut profesional tuvo lugar en la temporada 2012-13, llamando la atención al unirse a la Academia Nike a principios de 2014,[2] aunque regresando nuevamente al club croata.
HNL, atrayendo la atención del HNK Hajduk Split.
[4] Tras firmar un contrato de tres años y medio con el Hajduk Split a principios de 2015, inicialmente se unió a su cantera en la Treća HNL, aunque en abril de 2015 sería promovido al primer equipo por el nuevo entrenador Goran Vučević, debutando en la Prva HNL durante la derrota en casa por 1-2 contra el HNK Rijeka.
[7][8][9][10] Un año después abandonó el club tras ser traspasado al Celtic F. C.,[11] equipo en el que compitió durante temporada y media hasta fichar por el F. C. Union Berlin en enero de 2023.