AI는 시니어 엔지니어를 덜 가치 있게 만든 것이 아니라, 더 가치 있게 만들었습니다
소프트웨어 엔지니어링은 과거에 명확한 경로를 따랐습니다.
주니어는 문법을 배웠습니다. 미들 레벨은 시스템을 배웠습니다. 시니어는 판단력을 배웠습니다.
그러다 AI가 등장했습니다. 이제 누구나 몇 초 만에 코드를 만들어냅니다. AI는 함수, API, 테스트, 그리고 문서를 작성합니다.
어떤 이들은 이것이 숙련된 엔지니어에게 해가 된다고 생각합니다. AI가 코드를 작성한다면 회사가 왜 시니어가 필요한지 묻기도 합니다.
하지만 사실은 그 반대입니다. AI는 시니어 엔지니어의 가치를 높여줍니다.
많은 이들이 엔지니어링을 코드를 작성하는 것이라고 생각합니다. 하지만 코드는 종종 가장 쉬운 부분입니다.
진짜 어려운 작업은 다음과 같은 질문들을 다루는 것입니다:
- 우리가 해결하려는 문제는 무엇인가?
- 어떤 트레이드오프(tradeoffs)를 하고 있는가?
- 이것이 기존 시스템에 어떻게 부합하는가?
- 리스크는 무엇인가?
- 6개월 후에 이것을 어떻게 유지보수할 것인가?
- 요구사항이 변경되면 어떻게 되는가?
AI는 구현을 담당합니다. 하지만 AI는 책임을 질 수 없습니다. 시니어 엔지니어는 대부분의 시간을 책임지는 일에 씁니다.
이제 실력 있는 엔지니어와 실력 없는 엔지니어가 비슷한 코드를 만들어낼 수 있습니다. 하지만 비슷한 코드가 비슷한 품질을 의미하지는 않습니다.
AI는 당신이 제공하는 것이 무엇이든 그에 맞춰 작동합니다.
- 요구사항이 모호해도 AI는 결과물을 만들어냅니다.
- 아키텍처가 엉망이면 AI는 그 엉망인 상태를 따릅니다.
- 제약 조건이 없으면 AI는 임의로 가정해 버립니다.
숙련된 엔지니어는 이러한 문제들을 조기에 발견합니다. AI는 판단력을 대체하지 않습니다. 오히려 판단력이 결여된 순간을 드러낼 뿐입니다.
AI 이전에는 속도가 병목 구간이었습니다. 이제 팀들은 코드를 검토하는 속도보다 더 빠르게 코드를 생성합니다. 가치의 중심이 이동했습니다.
새로운 병목 구간은 다음과 같습니다:
- 요구사항의 명확성
- 아키텍처 결정
- 리스크 분석
- 검증
- 우선순위 설정
- 제품 이해
이것들은 시니어의 기술입니다. 구현 비용이 낮아질수록 이러한 기술의 중요성은 더욱 커집니다.
AI를 레버리지(leverage)라고 생각하십시오. 유능한 엔지니어는 더 많은 가치를 창출하기 위해 AI를 사용하고, 미숙한 엔지니어는 더 많은 실수를 저지르기 위해 AI를 사용합니다.
조직에는 다음과 같은 일을 할 수 있는 사람이 필요합니다:
- 적절한 제약 조건 정의
- 큰 문제를 작은 작업으로 분할
- AI의 변경 사항 검토
- 숨겨진 리스크 발견
- 시스템 품질 유지
도구는 변했습니다. 하지만 필요성은 그대로입니다.
커리어에 대한 질문은 코드를 얼마나 빨리 쓰느냐가 아닙니다. 얼마나 좋은 엔지니어링 결정을 내리느냐에 관한 것입니다.
코드 생성 비용은 매년 저렴해지고 있습니다. 하지만 좋은 판단력의 가치는 그렇지 않습니다.
AI가 코드를 작성할 수는 있지만, 무엇을 만들지 그리고 그것이 제대로 작동하는지는 인간이 결정해야 합니다. 그 영역은 여전히 인간의 몫입니다.
Source: https://dev.to/artcalo/ai-didnt-make-senior-engineers-less-valuable-it-made-them-more-valuable-3jfn
Optional learning community: https://t.me/GyaanSetuAi
