💴 Claude을 쓰며 배운 것들 [0.202832]

어정쩡한 개발자보다 낫다 (정말로)

다른 포스팅: 👉 AI vs. 주니어 혹은 Expert Beginner –에서도 적은 생각이지만, 오히려 별볼일 없이 모양새만 개발자인 동료보다 훨씬 낫다.

저번에 Claude을 이용해 생성해본 펄코드를 잠깐 보자:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
  # ---------------------------------------------------------------------------
  # Fetch a URL using LWP if available, or fall back to curl/wget via system()
  # ---------------------------------------------------------------------------
  sub fetch_url {
      my ($url) = @_;
      my $content = '';

      # Try LWP::Simple first
      eval {
          require LWP::Simple;
          $content = LWP::Simple::get($url) // '';
      };
      if ($@ || !$content) {
          # Fall back to curl
          $content = `curl -sL --max-time 30 "$url" 2>/dev/null`;
      }
      if (!$content) {
          # Fall back to wget
          $content = `wget -qO- "$url" 2>/dev/null`;
      }
      return $content;
  }

…Idiomatic하게 괜찮은 Perl코드에, 문서화도 깔끔하고, 심지어 기능적으로도 코드가 실행되는 상황에 맞춰 LWP, curl, wget을 자동으로 선택해서 실행해준다.

이 글의 주제인, “그저그런 개발자 동료란게 대체 뭐야?”–라고 물을 수 있을거 같다. …대부분의 내가 겪은 ‘개발자’동료들은 어느 자리에 앉아 있건, 경력이 얼마건간에 저정도의 코드를 작성해서 전달하는 사람을 본적이 거의 없다.

모양은 개발자라고 하지만, 혹은 심지어 C*O이거나 하더라도 대부분은 비슷했다. 개발자흉내를 내면서 먹고 사는거지 실제로 자기 일에 조금이라도 깊이 있기 정말로 아는 사람은 거의 없었다. 판교사투리가 어쩌고나 한국어 인터넷에 흘러드는 풍문이나 이슈나 따라가며, 어떤 언어는 어떻고, 어떤 프레임웍은 어떻고 하는 얘기들만 줏어들어서 뭐라뭐라 하기만 할줄아는 수준이었었다. …정작 그걸 시도라도 해본적은 없으면서 말이다.

코드를 작성하는것이나, 코드리뷰의 관점도 마찬가지였다. 코드를 잘 짤줄 모르거나, 제대로 짤줄 모르는걸 넘어서서, 제대로 성장하지도 못할 정도로 관점과 태도가 자기 멋대로인 경우가 너무 많았다. 자기가 짜는 코드에 대해서 제대로 이해하고 평가할 기준 자체가 편협했다. 그래서 당연히 자기 코드에 대해 스스로 평가하고 개선할 방법을 고민하기는 커녕, 피드백을 제대로 받아들일만큼 관점과 태도가 좋지도 못하다.

그런 사람은 리뷰를 받지도, 리뷰를 하지도 못한다. 한다고 하더라도 그저 적당히 말을 돌리거나 하는 기술만 늘어가서 실제로는 품질은 물론 계속되는 문제로 Time to market을 맞추지도 못할 정도였다.

이런 ‘개발자’들의 패턴중 하나는, 당장의 핑계는 바쁘니 그런 자잘한건 고려할 시간이 없다고 하지만 정작 몰입해 하는 것도 아니어서, 결과적으로는 끝도 없는 버그, 코드 품질은 엉망이고, 그런 태도이니 테스팅은 당연히 ‘시간낭비’이라고 우기면서 해놓지도 않아서 코드베이스가 제대로 진전을 이루지도 못한다. …1개월 예정의 프로젝트를 거의 5개월에 가까이 질질 끄는 경우도 본거 같다. 물론 그 이후에도 제대로 동작하는 결과물을 만들지도 못하고 계속해서 문제를 만들게 했다. 😅

이런 사람들은 팀에서 하는 일이 사실 회사원놀이를 하는것뿐이다. 적당한 사람들 편에 서고, 또 스스로 저런 헛소리에 넘어가줄, 실제로는 머리가 정말 나쁜데, 어느 정도의 교육을 받아서 자기는 뭔가 알고, 자기가 남을 이용한다고 믿는 상사를 이용하는 패턴이다.

…솔직히 한국에서 경험한 절대다수의 경험들이 저런 정도의 사람들이 대부분이었다. 독일에서 경험한 사람들은 그 환경에 따라 또다른 패턴이 있었지만, 한국에선 더 눈쌀이 찌뿌려지는거 같다.

그리고 이글의 주제처럼, 동료에게서 배우거나, 동료에게 피드백을 주며 같이 지낸다는 느낌은 별로 없던거 같다. 그리고 이런 별볼일 없는 동료들은 대부분은 인간적으로도 그저그래서 그냥 조용히 일을 해내고 성실히 책임을 다하면, 그런 사람을 몰라서 말을 않는 바보라고 착각하고 이용하려 든다는 점도 정말 실망스러운거 같다. 👎

그래서, 오히려 나라면 그냥 제대로 뭔가를 해내는 방법을 아는 진짜 시니어를 팀에 두는게 낫고, 나머지 🐒허수아비들은 별로 필요가 적어진 시대인거 같다. 팀원 개인으로서도 오히려 유독한☣ 사람들보다는 차라리 AI이 배울점이 더 많은거 같다.

…사람들은 인간으로서, 인간이 뭔가 인간만의 무언가가의 가치가 있어서, 기계가 대체하지 못할 가치가 있다고 믿고 싶어한다. 그런이들이 항상 있는그대로 보고 자기자신에 대해서도 냉철하게 판단하기를 거부하듯이, 그저 믿고 싶은대로 믿는것뿐인대로.

하지만 아이러니하게도, 대부분은, 인간으로서 제시했어야 할 가치들은 커녕 오히려 그에 역행하는 가치들에 속하는 모습만을 보여온거 같다. 그때엔 인간이기 때문에 대체되지 않을거라 생각하기 더 쉬웠었으니까.

결국 인간 곁에 있으면 단순히 기계의 차가운 정도가 아니라, 비인간성의 동상을 입을 정도의 비인간성만을 더 겪게 된다면, 차라리 그렇게 유독하게 ‘남들 다한다는’ 흉내를 내며 저지르는 쓰레기짓은 하지 않는 기계가 비교할 수 없이 낫다는걸 알게 된다.

보통 이런 논지에 마지막엔 “그래도 인간끼리 참고 부대끼며 얻는 온정” –같은걸 끼워넣어야 하겠지만, 그럴게 있나 싶다. 그렇게 인간끼리의 온정이 조금이라도 있었다면 이 사회가 그렇게도 감추려고 했겠지만, 그래도 드러나고야 마는 통계치들이 그럴 정도의 인간들도 못된다는걸 여실히 보여준다고 생각한다.

그리고 무엇보다 중요한점은, 선하고 친절해야 하지만 그 가치를 이해하지 못하는 이들에게 계속 그래줘서도 않되고, 모두가 그럴거라 착각하지 않는것이 건강하다. 물론 그럼에도 미리부터 계산적이고 냉철한척을 해도 좋을게 없다. 그건 그것만큼 어리석은게 없으니까. 🧐

인간적 가치 이외에도, 기술자로서, 직업인으로서도 배우거나 하는건 타산지석의 방식이외엔 별로 없었던거 같다. 타인에게서 많이 배워야 성인군자라고 하는거 같지만, 나는 그런 정도는 아니고 그럴 생각도 별로 없다. 그저 그런 사람들은 그저 그런거니까. 실력적으로나 인간적으로. 오히려 내가 뭘 하고, 뭘 했고, 또 무슨 일을 해야 하는지 업무적으로나 기술적으로 납득하고 같이 이해하고 하는 경우도 흔치 않다. 수준이 맞지 않는다면 아무리 겸손하게 명백히, 실증적으로, 명시적으로 의사소통을 해도 가능하지 않다.1

…이런것들을, 기계를 통해, AI을 통해, 인간적인 면과 기술적인 면에서 대조가 되어 조금은 더 배우게 된거 같다.

Footnotes


1

물론 어떻게든 성취를 깎아내리거나 “평가”를 가장한 가스라이팅을 하려는 사람에겐 그저 사소한 변명이겠지만 말이다.