프로그래밍은 여전히 형편없다
(stvn.sh)- 기술 업계의 실제 업무는 깔끔한 계획과 완벽한 생산 과정이 아니라, 방향을 잃은 배와 불타는 장비, 사라진 지식, 도움이 되지 않는 자동화가 뒤섞인 모습에 가까움
- 조직은 AI를 생산성 향상의 증거처럼 내세워 인력 감축과 판단의 외주화를 정당화하고, 주니어가 시니어로 성장하는 도제식 파이프라인까지 끊어버림
- Goodhart’s Law, 속도 지표, 스토리 포인트, 테스트 커버리지, DORA 지표는 실제 품질과 판단을 대체하지 못하며, 오류를 잡는 사람이 밀려나면 코드베이스는 취약해짐
- 2016년부터 매일 새벽 3시에 도는 cron job과
# DO NOT CHANGE!!! Ask Ben같은 운영 지식은 Sara 같은 사람이 붙들고 있지만, 조직은 그 사실조차 모름 - 핵심 문제는 AI가 아니라 탐욕이며, Sara가 사라지면 3만 명 규모 회사의 급여 지급을 지탱하던 보이지 않는 시스템도 함께 무너질 수 있음
AI가 가져온 변화보다 먼저 무너진 소프트웨어 조직
- 생일 파티에서 “AI가 일자리를 빼앗을까 걱정되지 않느냐”는 질문이 반복되지만, 기술 업계의 일은 원래 외부에서 상상하는 깔끔한 계획과 완벽한 생산 과정이 아니었음
- 실제 업무는 방향을 잃은 배, 불타는 장비, 작동 원리를 아는 사람이 사라진 시스템, 도움이 되지 않는 자동화가 뒤섞인 모습에 가까움
- CEO는 AI로 친구 Jared의 팀 생산성이 올라 절반을 해고할 수 있었다는 이야기를 들고 오지만, 현장에서는 그 말이 과시인지 위협인지 구분하기 어려운 압박으로 작동함
- “AI가 일자리를 빼앗는다”는 공포보다 더 큰 문제는, 조직이 AI를 핑계로 인력 감축과 판단의 외주화를 정당화하고 있다는 데 있음
해고된 것은 현재의 산출물이 아니라 미래의 숙련도
- 한때 엔지니어였던 리더들은 코드 리뷰가 왜 필요했는지, 주니어의 첫 PR이 시니어에게 혹독하게 검토되면서도 배움으로 이어졌던 과정을 알고 있었음
- 2024년에 갑자기 코드 리뷰와 도제식 성장을 없애기로 결정한 것이 아니라, 활주로가 줄고 CFO의 스프레드시트와 CEO의 AI 데모 신뢰가 조직 결정을 밀어붙였음
- CEO는 오프사이트에서 “에이전트가 14분 만에 기능 전체를 작성하는 데모”를 보고, Q2까지 엔지니어링 조직의 30%를 줄일 수 있다고 이사회에 말함
- 리더들은 주니어가 적응하고 재교육받아 다른 곳에 자리 잡을 것이며, 시니어가 빠진 손을 흡수하고 에이전트가 공백을 메울 것이라고 스스로 설득함
- 그러나 주니어의 가치는 당장의 생산량이 아니라, 나중에 “어디에 시체가 묻혀 있는지” 아는 시니어 엔지니어가 되는 데 있었음
- 산출량 최적화는 도제식 성장을 없앴고, 몇 년 뒤 시니어가 부족해졌을 때 그 원인을 기억하는 사람은 없을 것임
지표와 도구는 판단을 대체하지 못함
- 과거에 단순한 해답을 팔아온 리더들의 뒤처리를 해본 엔지니어라면, 숫자가 실제 품질을 보장하지 않는다는 사실을 이미 알고 있었음
- Goodhart’s Law는 속도 지표, 스토리 포인트, 테스트 커버리지처럼 비엔지니어에게 “일이 잘되고 있다”는 증거로 건네진 숫자들을 망가뜨렸음
- DORA 지표에서도 판단보다 도구 추가가 앞설 때 배포 안정성이 어떻게 흔들리는지 이미 드러났음
- 오류를 잡아낼 사람들이 밀려나거나, 오류를 잡는 일을 멈추는 법을 배우면 코드베이스는 취약해짐
- 그럼에도 사람들은 명단에 서명했음. 대안은 직장을 잃는 것이었고, 직장은 주택담보대출, 학비, 비자, 나중에 고칠 수 있다고 믿는 자기 자신과 연결돼 있었음
- “나중”은 오지 않으며, 모두가 그 사실을 알고 있었음
보이지 않는 운영 지식이 회사를 떠받침
- 어느 인프라 어딘가에는 2016년부터 매일 새벽 3시에 도는 cron job이 있고, 그것은 정확히 무엇을 하는지 모르는 채로도 중요한 일을 하고 있음
- 파일 상단 주석에는
# DO NOT CHANGE!!! Ask Ben이라고 쓰여 있지만, Ben은 더 이상 연락할 수 없음 - 지난 4년간 로드맵 계획마다 “레거시 cron 현대화”가 후보 과제로 올라왔지만 한 번도 선택되지 않았고, 그 항목은 직접 두 번 제거되기도 했음
- 그 작업을 실제로 살리는 사람은 Sara이며, 조직은 Sara가 그 일을 하고 있다는 사실조차 모름
- Sara는 50대 중반이고, 본사에서 세 거리 떨어진 작은 사무실에서 일했지만 비용 절감을 위해 사무실이 닫힌 뒤 배 아래 선실의 책상과 네트워크 연결을 찾아 일하게 됨
- Sara는 1998년부터 Ben에게 멘토링을 받았고, Ben이 세상을 떠난 뒤 그의 장례식에도 갔지만 조직은 그것도 모름
- 작업이 정기적으로 멈추면 Sara가 전화를 받고 문제를 확인한 뒤 다시 밀어 넣어 재시도하게 만듦
- 그 작업은 시간 속에 잃어버린 모듈에 의존하지만, Sara는 Ben의 책상에서 발견한 USB 스틱에 그 복사본을 갖고 있음
- 어떤 에이전트도 그 모듈을 건드리지 않았고, 앞으로도 건드리지 못할 것임
Sara는 대체 불가능한 파이프라인의 마지막 형태
- Sara는 단순히 안전한 사람이 아니라, 조직의 전환 과정이 삭제한 기관 지식이 55세의 몸으로 걸어 다니는 형태임
- Sara는 Ben, 1998년, USB 스틱으로 이어진 도제식 성장의 결과이며, 곧 사람을 길러내는 파이프라인 자체임
- Sara가 사라질 때, Sara 같은 사람을 만들어내던 시스템은 이미 3년 전에 죽었기 때문에 대체자를 고용할 수 없음
- cron job은 급여를 지급하지만, 조직은 이 사실도 모름
- Sara가 사라지고 cron job이 죽으면, 3만 명 규모의 회사는 모두에게 급여를 지급할 방법을 다시 찾아야 함
- 그때 필요한 답은 “숟가락을 든 사람”을 고용하는 것이지만, 조직은 이미 그런 사람을 만들 수 없게 해버렸음
결론은 AI가 아니라 탐욕
- 파티의 질문에 대한 답은 “AI가 우리의 일자리를 가져갔다”가 아니라, 탐욕이 가져갔다는 것임
- 그 탐욕은 공장을 방글라데시로 옮기고 콩고의 코발트 광산에 노예를 남겨둔 것과 같은 탐욕이며, 이번에는 AI라는 새 가면을 썼음
- Shopify 스토어를 만드는 조카에게는 다른 일을 하라고 말하라는 결론으로 이어짐
- 다른 일을 한다고 구원받는 것은 아니지만, 적어도 자기 삶을 파괴하는 것이 로봇이라고 가장할 필요는 줄어듦
- Sara만은 예외처럼 남아 있음. 그녀는 아래 갑판에서 USB 스틱을 들고 있고, 조직은 그녀가 거기 있다는 사실을 모르기 때문에 아직 그녀를 찾지 못함
- 나머지 사람들은 위 갑판에서 뒤집힌 돛대와 불붙는 인형을 보며 무엇이 어떻게 돌아가는지 모른 채 서 있음
Hacker News 의견들
-
“AI가 우리 일자리를 빼앗은 게 아니라, 탐욕이 그랬다”는 문장이 세게 와닿았음
Bangladesh로 공장을 옮기고 Congo의 코발트 광산에서 노예 노동을 유지하던 그 탐욕이 새 가면을 쓴 것뿐이라는 표현이 좋았고, 조카에게는 차라리 다른 일을 하라고 말하라는 대목도 강렬함
이 글은 예술 같아서, 하룻밤 자고 아침에 다시 읽어봐야겠음- 요즘 느끼던 걸 정말 잘 말로 옮겨줬음
프로그래밍을 좋아하고 꽤 잘하지만, 이 업계는 오물통 같음
이미 학교로 돌아가 이른바 ‘진짜’ 직업을 얻기로 했고, 사회 파괴에 혈안이 된 업계에서 일하는 데 지쳤음 - 사회가 내가 알쏭달쏭한 명세 언어로 몇 줄 지시를 쓴다고 연 50만 달러 이상을 빚진 건 아님
그런 돈을 받아온 건 멋진 일이지만 운과 상황 덕분이라고 봄
로봇이 내 일을 가져가면 다른 일을 찾을 것이고, 사악한 부자나 다른 괴물을 탓하지는 않을 생각임 - 정말 그럴까? Congo의 노예 노동이 왜 존재하는지 보면, 부유한 서구 국가들의 수요를 채우기 위해 프리미엄 전기차에 들어갈 재료를 만들기 때문임
그런 수요가 없었거나 사람들이 “그래도 이 비용으로는 안 된다”고 했다면, 도덕적 책임이 오직 산업가에게만 있다는 식으로 볼 수 없고, 그런 광산도 존재하지 않았을 것임 - 일자리를 가져가는 건 탐욕이 아니라 진보임
세탁기가 있으니 사람들이 돈 받고 손빨래를 하지 않고, 뉴스가 디지털로 전달되니 신문 배달원이 덜 필요해졌음
AI도 다르지 않아서, “만약” 어떤 일이 자동화되거나 더 효율적으로 될 수 있다면 그렇게 될 것임
개인에게는 이익이 아닐 수 있어도 사회 전체에는 이익일 수 있음
여기서 AI나 LLM이 실제로 그 일을 할 수 있다고 주장하는 건 아니고, “할 수 있다면” 그렇게 된다는 말임
탐욕은 필요 없음 - 컴퓨터 시스템을 조금 도와본 정도지만, 글에서 나열한 불만들—사람들이 시스템을 이해하지 못하고, 떠나고, 경영진이 유행하는 소프트웨어를 들여오는 일—은 탐욕적 자본주의가 없어도 생김
- 요즘 느끼던 걸 정말 잘 말로 옮겨줬음
-
“기술 업계에서 일하는 건 항상 별로였고, 사람들이 생각하던 그런 일은 아니었다”는 말은 사실이 아님
1988년부터 2000년까지 적어도 13년간 기술 업계에서 일하는 건 내게 정말 좋았고, 아마 그 이후도 꽤 괜찮았을 것임
별로가 되기 시작한 주된 이유는 기술이 아니라 비즈니스, 특히 기업 인수와 합병 때문이었음
좋은 회사에서 재미있는 문제를 풀고, 의미 있는 소프트웨어를 만들고, 만족한 고객이 있는 환경은 기술자의 천국이었음- 좋은 시간을 보냈다니 기쁨, 나도 그랬음
별로가 된 이유는 갑자기 별로가 돼서가 아니라, 우리가 그걸 알아차리기 시작했기 때문임
기술 자체가 나쁜 게 아니라 기술 산업이 나쁜 것임
우리는 늘 어떤 사람들에게는 나빴고, 이제는 그냥 모두에게 대놓고 나쁜 것처럼 보임 - 그 시절 일하면서 가장 기억나는 건, 관리자들이 기술적 의사결정을 엔지니어에게 맡겼다는 점임
- 좋은 시간을 보냈다니 기쁨, 나도 그랬음
-
이 글의 결론에 전부 동의하지는 않지만, HN 글 하나를 끝까지 읽으면서 AI 공동 집필의 광택을 느끼지 않아도 됐다는 점은 좋았음
- 재미있게도 나는 중간쯤 읽으면서 이 글이 적어도 Claude로 편집된 건 아닐까 궁금해지기 시작했음
작성자를 깎아내리려는 뜻은 전혀 없고, 사려 깊은 글이라고 생각하지만, 나는 AI 공동 집필의 광택을 느꼈음
내가 LLM 생성이라고 알아차리지 못한 글을 얼마나 많이 읽었을지 생각하게 됨
나름 감은 있다고 생각하지만 완벽하지는 않고, 거짓 음성도 거짓 양성도 있을 것임
차이를 더 이상 구분할 수 없게 되면 어떤 의미가 될까?
조금 더 생각해보니, 이 글의 주제를 고려하면 작성자가 내 말을 모욕으로 느끼지 않았으면 좋겠음
이른 아침이라 그런 듯하고, 내 판단이 틀렸을 가능성이 큼
그래서 위 질문이 더 신경 쓰임 - 맞음, 이건 X가 아니라 Y임
직장에서 사람들이 긴 대시를 넣고 뻔한 AI 문체로 글을 쓰는 걸 너무 많이 봐서 지쳤음
살짝 모욕처럼 느껴지지만, 결국 우리 모두가 이 가장극에 참여하고 있다는 걸 떠올리게 됨
- 재미있게도 나는 중간쯤 읽으면서 이 글이 적어도 Claude로 편집된 건 아닐까 궁금해지기 시작했음
-
이른바 AI로 인한 일자리 감소는 AI 때문이 아님
달리 주장할 사람이 없다고 봄
1년 안에, 아마 더 빨리 소프트웨어 시스템들이 무너지기 시작할 것이고, 실제로 그렇게 될 것임
그러면 기술 부문 채용은 폭증할 것임
오히려 AI의 결함을 메우기에 전 세계 개발자가 충분하지 않다고 봄
계산은 분명함
사람이 생성된 모든 소프트웨어 시스템의 1%만 건드린다고 해도, 현재 상태와 앞으로의 규제를 고려하면 그조차 현실적이지 않은데, 전 세계 4,700만 개발자로는 턱없이 부족함
일자리는 돌아오고 보수도 더 좋아지겠지만, 프로그래밍은 더 심하게 괴로워질 것이고 모두에게 맞는 일은 아닐 것임
뒤엉킨 난장판을 역으로 파헤치는 일을 즐기는 사람이 아니라면 맞지 않을 수 있음
AI가 모든 것이고 AI가 소프트웨어라면, 모든 것이 소프트웨어가 되고 모두가 그 소프트웨어의 한 조각을 원하게 됨- “달리 주장할 사람이 없다고 봄”이라지만, 실제로는 수백만 명이 반대로 주장하고 있음
-
글의 정서는 정확함
4년 전에 은퇴했는데, 그때 이미 10년 넘게 내리막이었음
다만 한 가지 덧붙이자면 프로그래밍은 아직 재미있을 수 있음
직업으로서의 프로그래밍은 별로지만, 개인 프로젝트를 위해 프로그래밍해보면 여전히 재미있다는 걸 알 수 있음
그래도 떠나서 정말 다행임
경력 말년에 동료와 Apple Park에서 점심을 먹다가, ‘공원’ 중앙의 식물과 나무를 돌보는 정원사를 멍하니 바라보던 기억이 남음
동료가 그 정원사에 대해 말을 꺼내려는 순간, 그도 나와 같은 생각을 하고 있고 다음에 무슨 말을 할지 바로 알 수 있었음 -
글이 정말 좋았음
“Iran에 핵을 쏠지 말지 같은 더 가벼운 주제로 넘어간다”거나, “주니어는 더 이상 없다. 2024년에 그들의 장례식이 있었지만 아무도 오지 않았다”, “AI가 우리 일자리를 빼앗은 게 아니라 탐욕이 그랬다” 같은 문장이 좋았음
냉소적 경험을 담은 풍자가 잘 살아 있음- “박수가 잦아들면, 내 직원들, 혹은 내 리포트들, 기분 좋을 때는 ‘내 팀’이라고 부르는 사람들”이라는 대목도 좋았음
-
프로그래밍은 언제나 별로였음
지금 달라진 점은 그 별로인 일을 대신 해줄 AI 에이전트가 생겼다는 것인데, 어쩐지 모든 게 더 나빠졌음
이제는 내가 쓰지도 않았고, 완전히 이해하지도 못하고, 코드 리뷰에서 제대로 설명할 수도 없는 코드를 디버깅해야 함- 왜 프로그래밍이 별로라고 생각함?
-
아름다운 글이었음
Peter Welch의 이 글의 정신적 선조 격인 글로 가는 역링크도 반가웠고, 어떻게 찾는지 잊고 있었는데 다시 읽는 즐거움이 있었음 -
“프로그래밍은 별로다”라는 글이, 아마 정적 생성 블로그일 텐데 HN 트래픽에 질식하고 있다는 게 좀 아이러니하지 않나?
- 맞음, 이건 내 실수였음
ISR 방식으로 가기 귀찮아서 Cloudflare 무료 요금제를 쓰고 있었고, 트래픽이 올 거라고는 전혀 예상하지 못했음
- 맞음, 이건 내 실수였음
-
정말 좋았고, 다시 돌아가 “Programming Sucks”도 읽었음
거기에도 이런 즐거운 문장이 많았음
“코더들의 컴퓨터가 비코더들의 컴퓨터보다 잘 작동하는 유일한 이유는, 코더들이 컴퓨터를 자가면역질환이 있는 정신분열증 어린아이 같은 존재로 알고 있고, 나쁠 때 때리지 않기 때문이다”- 말을 안 듣는 프로세스는 전부 죽임