본문 바로가기
활동정리/기타 생각

프리랜서 개발자 계약하기 전 꼭 알아야 할 것들

by 잔디🌿 2026. 1. 10.

    안녕하세요

    오늘은 제 썰을 풀면서 프리랜서 개발자를 시작하기 전 꼭 알아야 할 것들을 알려드리려고 합니다.

    일단, 제 sns(블로그, 링크드인..) 어디에도 해당 회사를 언급하지 않았기 때문에 뭐 회사를 까기 위해서 쓰는 글은 절대 아니구요, 진짜 단순히 다른 사람들은 이런 일을 안당했으면 하는 마음으로 이 글을 씁니다.

     

    아 그리고 저 일 시작하기 전 저는 매우 아무것도 모르는 대학생이었습니다.

    읽다가 답답해도 걍 아무것도 몰라서 그랬구나 해주세요.

     

    저는 4학년 시작 무렵, 주변에 하나 둘 프리랜서 개발자로 일을 하는 사람들이 생기면서 매우 부럽다는 생각을 했습니다.

    돈을 받고 개발을 한다? = 능력자

    그래서 처음 제의가 들어왔을 때 당연히 그냥 하겠다고 했고, 정말 일이 들어왔다는 사실이 감사하기만 했습니다.

    아마 거의 모든 대학생 분들이 이런 생각과 함께 일을 시작할텐데요, 물론 나쁜건 아니지만 위험할 수 있습니다.

    지금부터 회사로부터 권리를 지킬 수 있는 방법을 설명해드릴게요

     

    기본적인 마인드

    1. '대학생' 개발자의 한계가 존재할수밖에 없다.

    저도 그렇고 함께 일하신 분들도 그렇고, 대학생 신분으로 경력없이 일을 시작했기 때문에 돈을 시세에 비해 조금 받았습니다.

    사실 이렇게까지만 보면 당연합니다.

     

    하지만, 회사는 일을 시킬 때 저희가 대학생 개발자라는 사실을 망각하는 경우가 많습니다. 

    제가 일한 회사 같은 경우, 돈을 주고 일을 시켰으면 모든걸 구현해야하고, 성능도 시중 소프트웨어와 동일해야한다는 마인드를 가지고 있었어요.

    실제로 어디 회사 서비스는 로딩이 ~초만 걸리니까 ~초 내로 완료되는 성능을 가지도록 해라 등 다른 곳은 가능하니 너네도 구현해라 라는 요청을 많이 받았습니다. 

    물리적으로 구현이 가능하다면 무조건 구현해야하는 분위기였어요.

     

    그런데 우리는 대학생 개발자고, 한계가 분명히 존재합니다. 저희는 이에 따라 돈도 그만큼 적게 받고요

    따라서 회사가 물리적으로 보면 가능하지만, 경험, 인력이 없어 해결하지 못하는 사안을 요구할 때에는 이 부분에 대해 분명히 이야기해야합니다.

     

    빅테크 기업은 하나의 프로젝트를 만들기 위해 비싼 돈을 들여가며 급여 높은 경력자, 보안팀, 서버팀 등등을 고용합니다.

    때문에 고액의 비용을 들여 나온 결과를 대학생 개발자에게 당연하게 요구해서는 안됩니다.

     

    2.  당당하게 돈을 밝히자

    개발 일을 시작하고, 처음에는 돈 이야기를 하기에 마음이 좀 불편할 수 있습니다. 뭔가 돈 밝히는 사람이 된 것 같거든요..

    하지만, 회사는 아주 당당하게 일을 시킵니다. 돈을 주기로 했으니까요

    그럼 저희도 일을 했으니 당당하게 돈을 달라는 요구를 해야합니다.

     

    계약 초, 이런저런 문제로 돈을 일 시작 후 2달반 못받은 적이 있습니다. 

    이때, 회사가 저희한테 한 말은 현재 프로젝트가 회사에 돈이 안되는데 포트폴리오를 만드려고 하는 일이다, 원청 회사가 돈을 주면 월급을 줄 수 있다. 이런 핑계를 대며 개발자가 봐줘야 할 것 처럼 이아기를 했습니다. 일은 시키면서요.

     

    하지만, 개발자는 시간이 남아 돌아서 시간을 써가며 회사의 일을 해주는 것이 아닙니다.

    제가 만약 시간이 없어 개발을 못했는데 돈은 받아야겠다라고 하면 그건 당연히 잘못된 요구를 하는거겠죠?

    똑같은 이야기입니다.

     

    회사의 재정 상태는 개발자가 고려할 사안이 아닙니다. 

    노동력 = 돈이므로, 이미 개발자가 노동력을 회사에 지급했으면 회사는 온갖 방법을 동원해서 돈을 줘야하는 것이 맞습니다.

    만약 급여를 지급할 수 있는 상황이 아니라면, 개발자를 고용하지 않고 프로젝트를 진행하지 말았어야합니다.

     

    그러니 꼭 이 글을 보시는 개발자분들은 당당하게 급여 요구를 하시길 바랍니다.

     

    3. 일은 정으로 하는 것이 아니다.

     저는 타 팀 프로젝트를 할 때에는 팀원들과 많이 친하기도 했고, 재밌었어서 안해도 되는 일도 하는 등 자발적으로 많은 일을 했었습니다. 이것이 가능했던 이유는, 어느 누구도 이 프로젝트로 특별하게 이득을 보는 사람이 없었기 때문입니다.

     

    하지만, 회사는 해당 프로젝트로 돈을 법니다. 만약 저희가 정으로 일을 해주면 공짜로 회사에 돈을 주는것과 마찬가지입니다.

    회사가 정으로 돈을 주지는 않으니까요.

     

    담당자분께서 서비스로 2주간 무급으로 일해달라고 하신 적이 있습니다.

    사유는 원청이랑 싸우기 싫어서라고 하셨습니다.

    그럼 저랑은 싸우고싶나요.

    뭐 나름대로 정이 쌓였다고 생각하셔서 그냥 해줄거라는 그런 생각을 하신 것 같습니다. 

     

    그리고 프로젝트를 하는 내내 은근슬쩍 계약 이상의 요구를 하는 경우가 있었어요.

    계약상의 일이 아니니 해줄 수 없다고 하면, 뭐 공수가 많이 들어가냐와 같은 질문을 해서 이것도 못해주나 라는 느낌을 주셨습니다.

    네 이것도 못해줍니다. 그거에 대한 돈을 안주시니까요

     

    이정도는 요구는 별 일 아니니까 괜히 담당자랑 싸우지 말고 해주자 라고 생각하고 해준다면, 순식간에 선을 넘으실 확률이 높습니다. 

     

    저희는 많이 거절을 했었는데도, 계약이 끝나고 3주 후 다른 개발자분께 특정 부분 수정을 서비스로 해달라는 연락이 왔다고합니다.

    이렇게 선을 그어도 또 쉽게 넘을 가능성이 큽니다. 

    그러니까 처음부터 정해진 일만 칼같이 하는 것을 추천드립니다.

     

    사회생활 경험이 없는 대학생은 다루기 쉽습니다. 보통 프로젝트에 대한 애정과 책임감이 있기 때문이에요.

    이들을 허무하게 만들지 않는 좋은 회사도 봤습니다.

     

    하지만 아닌 경우도 있고, 이 경우 개개인의 권리를 꼭 지켜야 합니다.

     

    종종 일을 함으로서 경력을 쌓을 수 있으니 개발자한테도 좋은 일을 시켜주는거다 라는 회사가 있는데요, 물론 맞는 말이지만 사실 회사는 일을 시킴으로서 돈을 벌려고 고용한거지 대학생들 경력 쌓아주려고 고용한게 아닙니다. 이런 말은 그냥 열정페이로 이익을 얻기 위한 수단일 뿐일 확률이 높아요.

     

    감사하는 마음이야 가질 수 있지만, 그렇다고 의무적으로 뭘 더 해드려야하고 이런건 전혀 없습니다. 경력은 스스로가 만든 기회이고 경험입니다.

     

    너무 각박해보일 수 있지만, 당하는거 한순간입니다. 꼭 이 마인드 탑재하고, 선을 잘 지키며 일하시기를 바랍니다.

     

    이제 중요하게 확인해야 할 것들을 정리해드릴게요.

     

    꼭 확인할 것들

    계약서 쓰고 일하기

     사실 정말 당연한 일이지만, 막상 일을 시작하게 되니까 돈을 못받을거라는 생각이 잘 안들었습니다. 제가 너무 좋은 세상만 보고 살았나봅니다.

     TMI이긴 하지만, 심지어 카카오테크캠퍼스에서 외국인 노동자분들께서 계약서 미작성으로 인해 돈을 못받는 문제를 해결해드리고자 디지털 계약서 작성 서비스도 제작한 경험이 있습니다.

     

    근데 네 당했습니다

     

    저희는 4월 중순부터 기획단계에 참여했습니다.

    이런 기능을 원하시는데 가능하겠냐 이런것에 대한 자문도 하고, 필요한 것들? 문서화 해서 보내드리고 회의도 했습니다.

    이후 5월 중순쯤 계약서를 쓰는데 시작 날짜가 5월 1일인거에요.. 4월 중순부터 일한건 어디있냐고 했는데 그때는 무급이었다고 하셨습니다. 어이가 없었지만 계약서를 쓰지 않았어서 딱히 할 말이 없었습니다.

     

    여러분은 꼭 계약서 쓰고 일 시작하세요

    회의정도는 별 일 아니니까 개발 들어가면 계약서 쓰겠지 라는 생각을 할수도 있는데요,  회사는 개발자와의 회의를 기획을 하고, 이를 통해 수익을 창출하고 있습니다.

    계약서를 쓰지 않으면 회사만 좋은 일 시켜주는거고, 돈을 못받더라도 해결하는 절차가 매우 까다로워질거에요.

    그리고 계약서 안쓰면 나중에 경력으로 인정받기도 매우 어렵습니다.

     

    계약기간 연장으로 인한 추가 계약, 그리고 기능 추가와 같은 자잘한 사안에 대해서도 꼭 계약서를 써야합니다.

    계약서 쓰기 전까지는 절대 일하면 안됩니다.

     

    계약서 내용 잘보기

    계약서를 처음 썼던 저는, 당연히 계약서에는 이상한 문구가 없을 것이라는 안일한 생각을 했습니다.

    계약서는 굉장히 공적인? 문체로 적혀있어요. 그래서 이상함을 감지하기가 쉽지 않습니다.

    그래서 계약서 쓰기 전에 꼭 지피티한테 한번 물어보시는것을 추천드려요. 지피티가 정말 잘 봐줍니다.

     

    비용 관련 문제

    일단 가장 중요한 부분이죠 비용 관련해서는 꼭 명확하게 작성되어있어야 합니다.

    날짜, 비용은 정말 기본적인 문제에요. 저의 경우를 살펴볼게요

     

    프로젝트에서 을에게 지급되는 총 금액은 n만원으로 매월 n만원으로 하며, 착수금은 기술 검토 완료일로부터 30일 이내, 중도금은 중간 결산으로부터 30일 이내, 완료금은 납품 이후 30일 이내에 을의 계좌로 지급한다.

     

    저희의 경우, 계약기간은 정확한 날짜가 있었지만, 월급 지급 날짜는 이런식으로 모호하게 작성되어있었어요.

    그래서 원청이 돈을 입금해야 줄 수 있다 이런 말도 안되는 말에도 크게 반박할 수가 없었습니다.

    그리고 30일 이내에 입금하겠다. =  월급 30일 밀리겠다는 말입니다. 이거 고쳐달라는 요청을 했는데 뭐 돈이 없다고 해서 일단은 봐드렸습니다.

    그런데 계약서 쓰고 나면 월급 밀리는게 당연한 일이 되거든요. 웬만하면 바로바로 받는걸로 쓰는 것이 좋을 것 같습니다.

     

    유지보수 관련 문제

    유지보수는 당연히 소프트웨어의 주인인 회사에서 비용을 들여가며 책임져야 하는 부분입니다.

    엄청난 개발자들을 큰 돈을 들여 쓰는 빅테크 기업의 소프트웨어에서도 버그는 얼마든지 발생합니다. 그래서 유지보수 비용에 투자를 많이 하는거고요.

     

    그런데 개발을 전혀 모르는 업체들은 소프트웨어에서  발생하는 여러 문제(서버, 버그...)를 해결하는 것이 다 개발한 개발자의  과실이고, 책임이라고 생각하기 쉽습니다. 그래서 계약기간이 끝나도 이런 유지보수를 해줘야한다는 조항은 주의해야합니다.

    개발 이후 개발 오류로 인한 유지 및 보수

     

    저희 계약서에는 이런 내용이 있었습니다. 언뜻 보면 당연합니다. 하지만, 버그가 발생했거나 서버에 장애가 생기는 등의 문제가 발생했을 때, 해당 부분이 개발오류로 인해 발생한 것인지, 아닌지는 확인이 어렵습니다. 때문에 만약 계약서에 해당 조항이 있다면 오류 발생 시 유지보수를 안해주는 것은 문제가 될 수 있습니다. 즉 유지보수 평생 무료 조항이 되는 것이죠.

     

    그렇다면 엉망인 소프트웨어를 넘겨도 되는 것일까? 라고 생각할 수 있습니다. 이렇게 되면 회사한테 너무 불리하죠. 이를 위해서 있는 기간이 테스트 기간입니다. 클라이언트는 해당 기간동안 버그를 확인하여 보고하고, 개발자들은 이를 해결해줄 의무가 있습니다.

    이후 발생하는 버그에 대해서는 소프트웨어의 주인인 클라이언트에게 책임이 있습니다.

     

    계약서에는 계약기간 이후에 책임을 져야 할 요소를 절대 남겨두면 안됩니다. 잘못하면 무급으로 일을 하게 될수도 있습니다.

     

    아 추가로 개발 오류로 소송 걸릴수도 있다 이런 말을 하실수도 있는데요, 이 부분을 알아본 결과 정말 고의적으로 중대한 문제를 일으킨 것이 아니라면, 개발자한테 책임을 묻기는 어렵습니다. 하지만 이것도 프리랜서 특성상 계약서가 중심이 되어 판단되기 때문에 꼭 해당 부분을 잘 확인하시고 계약하셔야합니다.

     

    추가 기능에 대한 협의

    개발자는 클라이언트가 요구하는 기능명세에 따라 일을 하기 때문에 사전에 기능 명세를 확인하고 이에 맞는 비용 견적을 냅니다.

    그렇기 때문에 클라이언트가 기능명세 이상의 기능을 계속 추가해서는 안됩니다. 이를 방지하기 위해 기능 추가에 대한 조항도 필요합니다.

    실제로 계약 종료 일주일 전 클라이언트측에서 많은 기능추가를 요청한 적이 있습니다. 추가 기능을 구현하는 것이 아무리 어렵지 않은 일이라도 이에 대한 돈을 주지 않으면 해줄 수 없는게 당연합니다. 그리고 마찬가지로 자잘한 기능추가를 해드리다보면 더 큰 요구를 하실 가능성이 큽니다.

    저희는 사전에 기능명세 픽스되는 기간을 정해서 이를 거절할 수 있었지만, 만약 그렇지 않았다면 무료로 다 해드려야할 수밖에 없었을수도 있습니다.

     

     자료 남겨두기

    일을 하다보면 여러분이 생각지도 못한 덫에 걸리게 될 때도 있을 것입니다.

    찾아본 결과 저와 같이 근무 형태의 프리랜서로 일을 했을 때 발생하는 문제는 근로기준법을 통해 해결할 수도 있다고 합니다.

    이를 입증하기 위해서는 회의록, 메신저 내용 등등 프리랜서로서 일을 독립적으로 수행한 것이 아닌, 담당자의 지시 하에 일을 했다는 것을 입증하면 유리할 수 있습니다.

     

    또한 계약서에 입금일이 명확하게 나와있지 않거나 다른 추가적인 약속을 하셨을 경우, 나중에 이 부분에 논쟁이 생기지 않도록 꼭 녹음, 캡쳐 등의 자료(음성으로 대화를 했다면 메신저에 ~라고 하셨는데 맞나요? 와 같은 질문을 해서 증거를 남기는 것도 좋은 방법입니다.) 를 남겨두시는 것이 좋을 것 같습니다.

     

     

    저는 다행히도, 같이 일을 하는 개발자분이 이런 권리를 잘 지키시는 분이라서 덕분에 부당한 일을 많이 안당하고 일을 할 수 있었습니다.

    만약 아니었다면 좀 힘들어졌을 것 같습니다.

    같이 일하는 사람도 정말 중요합니다. 저는 같이 개발하시는 분들이 다 좋은 분들이셔서 그래도 이 부분은 좋았습니다.

     

    그럼 다들 안전한 개발자 생활하세요!