본관은 의성(義城). 자는 대뢰(大賚), 호는 구봉(九峯). 고부(古阜) 출신. 김호(金顥)의 증손으로, 할아버지는 김제안(金齊顔)이고, 아버지는 김성(金晟)이며, 어머니는 김응별(金應鼈)의 딸이다.
광해군의 폭정에 실망, 관계 진출을 단념하였으나 인조반정으로 광해군이 몰려나자 뜻을 바꾸어 1624년(인조 2) 진사가 되고, 음보(蔭補)로 기용되어 여러 관직을 거쳐 공조좌랑에 올랐다. 1638년 정시 문과에 을과로 급제, 기사관(記事官)·호조좌랑을 거쳐 이듬해 예조좌랑이 되었다.
1641년 지평(持平)이 되어, 성격이 포악하고 권문(權門: 권세있는 문벌)에 아첨하는 등 상도(常道)에 벗어난 행동이 잦았던 이조판서 남이웅(南以雄)의 탄핵을 주장하다가 동료들과의 의견대립으로 사퇴하였다.
1646년 다시 직강(直講)이 되고, 그 뒤 무장현감(茂長縣監)으로 재임하다가, 1650년(효종 1) 병조정랑에 임명되어 부임도중 병사(病死)하였다. 평소 마음이 활달하고 조그만 일에 구애받지 않아, 호조좌랑에 재직 중 물화(物貨)의 출납에 세심하지 못하다 하여 상관으로부터 꾸중을 듣기도 하였다. 『시경(詩經)』·『서경(書經)』 등 경서에 통달하였고, 특히 지평 정두경(鄭斗卿)과 절친하였다.