최근 개발자 커뮤니티에서 AI가 변화시키고 있는 코드 생태계에 대한 불만을 많이 접할 수 있다. 분노섞인 외침까지도. AI가 마구잡이로 생성해낸 코드로 인해 개발자들이 마주하는 부작용과 그에 대한 피로감을 접할 수 있다.

AI Slop 코드

AI slop refers to mass-produced, low-quality content generated by artificial intelligence that prioritizes speed and quantity over substance.

AI slop은 흔히, AI가 생성하는 저품질 이미지나 동영상들을 일컫는 용어로, 개발자로서 느끼기에, 코드에도 Slop이 존재한다. 코드 퀄리티를 생각하면 production에 반영하면 안 될 것 같은 코드들이 ‘클로드와 논의를 마쳤다’는 논리로 무장하여 배포를 대기하게 된다.

개발자가 AI 시대 이전보다 개발 검수를 느슨하게 하는 경향도 있다. 빠른 코드 생성, 검수, 수정의 iteration을 통해 문제를 해결하는 시대가 된 것은 안다. 그래도 아직은 그 과정에서의 저품질 코드를 보면 피로감이 느껴진다. 내가 개발자로서의 업무를 좋아했던 것은, 훌륭한 구조의 간결한 코드를 통해 문제를 해결하는 과정에서 성취감을 느꼈기 때문이었다. 코드 작성자로서든 리뷰어로서든 간에. 요즘은 그런 감정이 확실히 예전보다 줄었다.

프롬프트 엔지니어링

개발자로서 코드를 직접 작성할 일이 줄어들다 거의 없다보니 클로드에게 지시하고, 프롬프트 작성하는 일들이 업무를 대체했다. 손/입코딩을 하고, 구현된 코드 읽어보고, QA도 해보고. 클로드가 나 대신 좋은 코드를 작성하게 하기 위해 안내하고 명령, 지시하는 과정이 대부분의 업무가 됐다. 하네스 엔지니어링(에이전틱 코딩이라 하는가? whatever)을 통해 보다 나은 코드를 생성해내려고 한다. 그 과정은 나름의 보람을 느끼며 적응해나가고 있다.

그치만, LLM API를 사용하여 서비스를 개발하는 것은 아직은 정말 곤욕이다. 프롬프트 엔지니어링을 공부하고 적용해봐도 LLM은 종종 기대와 다른 응답을 뱉는다. 클로드든 GPT든 간에 그 내부에서 어떤 기준으로 응답이 나오는지 완벽히 알 수가 없다. 어찌할 수 없는 불확실성이 주는 당혹감. 개발자로서 무기력감을 느끼는 순간이다.

시간이 필요해

AI 시대 이전에 일해왔던 기간에 비해 최근 새로운 시대에 적응하는 시간은 짧았다. 모든 걸 시간이 해결해주리라는 막연한 기대감을 가져본다. 피로감이 점점 적어질 때쯤이면 개발자가 얼마나 필요한 직업으로 남아있을지는 사실 잘 모르겠지만.