세일중학교와 장훈고등학교를 거쳐 일본J2리그의 도쿠시마 보르티스에 입단했다. 2012 시즌엔 25경기 출장 3골, 2013 시즌엔 30경기에 출장하며 주전 공격수로 자리잡았다. 그의 활약에 힘입어 도쿠시마 보르티스도 J1리그로 승격했지만 17경기 0골이라는 초라한 성적과 함께 팀은 다시 강등됐다. 2015 시즌엔 23경기에 출장해 5골을 기록했다.
2017년에는 조나탄과 박기동 등의 합류로 기회를 거의 못 받고 있다가, 여름 이적 시장을 통해서 J2리그의 파지아노 오카야마로 임대되며 1년 반만에 다시 일본 무대를 밟게 되었다. 일본에서 경험을 더 쌓고 오는 것이 중요할 듯. #등번호는 9번이라고 한다. 그러나 일본에서도 부상으로 부진하면서 앞날이 불투명해진 상황. 결국 큰 소득 없이 시즌 종료 후 수원으로 임대 복귀하였다. 등번호는 예전과 동일한 18번.
2018년에는 R리그를 전전하다가 드디어 7월 7일 제주 유나이티드와의 경기에 후반 교체출전하여 아주 오랜만에 1군무대로 모습을 드러내었는데 후반 막판 팀이 2대2로 맞서던 상황에서 무리하게 볼을 커트해내려던 과정에 노동건과 충돌하여 노동건은 캐치하던 볼을 흘려버린뒤 엉켜넘어졌고 이 볼이 하필이면 제주의 권한진 앞에 떨어져 권한진은 빈 골문에 유유히 골을 성공시키게 만드는 치명적인 실수를 범해버렸고 수원은 결국 2대3으로 패해버렸다. 애초에 노동건은 볼의 위치를 파악하여 캐치자세를 잡고있었는데 하필 김종민이 노동건의 위치를 보지않고 볼만보고 뛰어들다가 실점을 허용케하는 대 참사를 내버리고말았다. 이 경기후에도 한번 교체로 출전하였으나 결국 그 뒤로는 다시 1군 무대에서 빠져버렸다.
이후 서정원 감독이 자진사임 하고 이병근 임시감독이 지휘봉을 잡자 기회를 주는 모습이다. 10월 7일 기준 득점은 여전히 없지만 최근 경기에서 적지않은 기회를 받으며 조금씩 폼이 올라오는 모습이다.
10월20일 포항과의 33라운드 정규리그 마지막 홈경기에서 홍철 의 크로스 패스를 해딩골로 연결하며 쐐기골로 2대0 승리를 거두었다.
도쿠시마에서 수원으로 이적할 때의 연배가 과거 삿포로에서 수원으로 이적했을 무렵의 조성진과 비슷했기 때문에 상무나 경찰 입대를 위해서 수원으로 온 것이라는 추측이 있었으나, 수원에서 2시즌을 보내고 경찰 축구단에 입대했던 조성진과 달리 김종민은 상무에도, 경찰에도 입대하지 않았다. 정황 상 알려지지 않은 부상으로 병역면제를 받았거나, K4리그 소속인 포천에서 2시즌을 보냈을 때 사회복무요원으로 병역을 해결한 것으로 추정된다.