소프트웨어 엔지니어링의 다음 2년
소프트웨어 엔지니어링의 다음 2년
원본 : https://addyosmani.com/blog/next-two-years/
2026년 1월 5일
소프트웨어 산업은 지금 이상한 변곡점에 서 있습니다.
AI 코딩은 단순한 자동 완성을 넘어, 개발 작업을 자율적으로 수행하는 에이전트 단계까지 발전했습니다.
기술 업계의 대규모 채용을 이끌던 경제 호황은 효율성 중심 기조로 바뀌었고, 기업들은 성장보다 수익성, 신입보다 경력자, 대규모 조직보다 더 나은 도구를 갖춘 소규모 팀을 선호하고 있습니다.
한편, 새로운 세대의 개발자들이 전혀 다른 계산법을 가지고 노동시장에 진입하고 있습니다.
이들은 경력 안정성에 더 현실적이며, 과도한 자기계발 문화에 회의적이고, 처음부터 AI 도움을 받는 환경에서 성장했습니다.
앞으로 무엇이 벌어질지는 분명하지 않습니다.
아래에는 2026년까지의 소프트웨어 엔지니어링을 좌우할 수 있는 다섯 가지 핵심 질문과, 각각에 대한 두 가지 상반된 시나리오를 제시합니다.
이는 예측이라기보다는 대비를 위한 관점에 가깝습니다.
목표는 현재의 데이터에 기반하고, 이 커뮤니티가 지닌 건강한 회의감을 반영한 현실적인 로드맵을 제시하는 것입니다.
1. 주니어 개발자 문제
핵심 요지
AI가 초급 업무를 자동화하면서 주니어 개발자 채용이 붕괴될 수도 있고, 반대로 소프트웨어가 모든 산업으로 확산되며 다시 늘어날 수도 있습니다.
두 미래는 전혀 다른 생존 전략을 요구합니다.
“코딩을 배우고 → 주니어로 취업하고 → 시니어로 성장한다”는 전통적인 경로는 흔들리고 있습니다.
하버드의 6,200만 명 규모 노동자 연구에 따르면, 기업이 생성형 AI를 도입하면 6분기 안에 주니어 개발자 고용은 약 9~10% 감소한 반면, 시니어 고용은 거의 변하지 않았습니다.
대형 기술 기업들은 지난 3년간 신입 졸업생 채용을 약 50% 줄였습니다.
한 엔지니어의 냉소적인 말처럼,
“연봉 9만 달러짜리 주니어를 왜 뽑나, AI 코딩 에이전트가 더 싼데.”
이는 AI만의 문제가 아닙니다.
금리 인상과 팬데믹 이후 조정 같은 거시적 요인은 2022년부터 이미 영향을 미쳤습니다.
다만 AI가 이 흐름을 가속화했습니다.
AI의 도움을 받는 시니어 한 명이 과거에는 소규모 팀이 필요했던 생산성을 내고 있습니다.
기업들은 해고를 늘리기보다는, 조용히 주니어를 뽑지 않고 있습니다.
반대 시나리오도 있습니다.
AI가 모든 산업에서 개발 수요를 폭발적으로 늘리는 경우입니다.
헬스케어, 농업, 제조, 금융까지 소프트웨어와 자동화를 적극 도입합니다.
AI는 개발자를 대체하는 존재가 아니라, 개발을 이전에 코더를 고용하지 않았던 영역으로 확장하는 증폭기가 됩니다.
이 경우 엔트리 레벨 역할은 사라지지 않고, 형태가 바뀝니다.
특정 도메인에 맞춘 자동화와 연계를 빠르게 만드는 “AI 네이티브” 개발자가 등장합니다.
미국 노동통계국은 여전히 2024~2034년 소프트웨어 직무가 약 15% 성장할 것으로 전망합니다.
기업이 AI를 인원 감축이 아니라 생산 확대에 활용한다면, 그 기회를 잡을 사람은 여전히 필요합니다.
비관적 시나리오의 장기적 위험은 종종 간과됩니다.
오늘의 주니어는 내일의 시니어이자 기술 리더입니다.
인재 파이프라인을 끊으면 5~10년 뒤 리더십 공백이 생깁니다.
업계 베테랑들은 이를 “느린 붕괴”라고 부릅니다.
대체 인력을 키우지 않는 생태계는 결국 스스로 약화됩니다.
어떻게 대응할 것인가
주니어 개발자
AI 활용 능력과 범용성을 갖추십시오.
주니어 한 명과 AI가 소규모 팀의 생산성을 낼 수 있음을 증명해야 합니다.
AI 코딩 에이전트로 큰 기능을 만들되, 대부분의 코드 라인을 이해하고 설명할 수 있어야 합니다.
의사소통, 문제 분해, 도메인 지식처럼 AI가 대체하기 어려운 역량에 집중하십시오.
QA, 개발자 관계, 데이터 분석 같은 인접 역할도 진입점이 될 수 있습니다.
AI API를 연동한 프로젝트 중심의 포트폴리오를 구축하십시오.
도제식 훈련, 인턴십, 계약직, 오픈소스를 고려하십시오.
“교육이 필요한 신입”이 아니라, 바로 기여할 수 있고 빠르게 성장하는 엔지니어가 되어야 합니다.
시니어 개발자
주니어가 줄어들수록 잡무는 당신에게 옵니다.
반복 작업은 자동화에 맡기고, 모든 것을 혼자 처리하지 마십시오.
CI/CD, 린터, AI 기반 테스트를 적극 도입해 기본 오류를 차단하십시오.
오픈소스나 타 부서 동료 코칭을 통해 비공식 멘토 역할을 하십시오.
전원 시니어 팀의 위험성을 경영진에게 솔직히 전달해야 합니다.
주니어 수요가 다시 늘 경우를 대비해, AI를 활용한 온보딩과 위임 방식을 준비하십시오.
당신의 가치는 개인 생산성이 아니라, 팀 전체의 생산성을 증폭시키는 데 있습니다.
2. 기술 역량 문제
핵심 요지
AI가 대부분의 코드를 작성하면서 핵심 프로그래밍 역량이 약화될 수도 있고, 반대로 인간의 감독 능력이 더 중요해질 수도 있습니다.
이 시기는 이해를 속도와 맞바꿀지, 아니면 더 높은 기준을 세울지를 결정하는 시기입니다.
현재 개발자의 84%가 정기적으로 AI 도움을 사용합니다.
버그나 기능 요청을 받으면 직접 코드를 작성하기보다, 프롬프트를 만들고 AI가 생성한 결과를 조합하는 것이 첫 반응이 되었습니다.
초급 개발자 중 일부는 이른바 “힘든 길”을 건너뛰고 있습니다.
이진 탐색 트리를 직접 구현하거나 메모리 누수를 스스로 디버깅해 본 적이 없을 수도 있습니다.
역량의 중심은 알고리즘 구현에서, AI에게 올바른 질문을 던지고 결과를 검증하는 능력으로 이동하고 있습니다.
문제는 이것이 독립적으로 코드를 작성하지 못하는 세대를 만들 수 있다는 우려입니다.
AI가 만든 코드는 미묘한 버그나 보안 취약점을 포함할 수 있고, 경험이 적은 개발자는 이를 놓치기 쉽습니다.
반대 시나리오는 이렇습니다.
AI가 평범한 80%를 처리하는 동안, 인간은 가장 어려운 20%에 집중합니다.
아키텍처, 복잡한 통합, 창의적 설계, 경계 조건 같은 문제입니다.
AI가 보편화될수록, 이를 제대로 활용할 수 있는 깊은 이해를 가진 개발자의 가치는 오히려 높아집니다.
“훌륭한 엔지니어는 가장 빨리 코딩하는 사람이 아니라, AI를 의심할 줄 아는 사람”이라는 말이 나옵니다.
프로그래밍은 타이핑보다 검토의 비중이 커집니다.
논리 오류, 보안 결함, 요구사항 불일치를 찾아내는 능력이 핵심이 됩니다.
AI는 웹 앱을 빠르게 만들 수 있지만, 전문가만이 보안 규칙 위반이나 경쟁 상태를 잡아냅니다.
업계의 의견은 갈렸습니다.
어떤 개발자는 손으로 코드를 거의 쓰지 않으며 면접 방식도 바뀌어야 한다고 말합니다.
다른 이들은 기본기를 건너뛰면 AI 결과가 깨질 때 더 큰 불을 끈다고 반박합니다.
결국 업계는 두 가지를 모두 요구하기 시작했습니다.
AI의 속도와, 품질을 지키는 기초 역량입니다.
어떻게 대응할 것인가
주니어 개발자
AI를 지팡이가 아니라 학습 도구로 사용하십시오.
AI가 제안한 코드가 왜 동작하는지 검토하고 약점을 찾으십시오.
가끔은 AI를 끄고 핵심 알고리즘을 직접 작성해 보십시오.
자료구조, 알고리즘, 복잡도, 메모리 관리 같은 기본기를 우선하십시오.
같은 프로젝트를 AI 사용 버전과 미사용 버전으로 두 번 만들어 비교하십시오.
테스트와 디버깅에 익숙해지십시오.
AI에 바로 묻기 전에 스택 트레이스를 읽고 디버거를 사용하십시오.
시스템 설계, 동시성 사고, 사용자 경험 감각을 강화하십시오.
AI로 빠르게 결과를 내면서도, 실패 지점에서는 직접 해결할 수 있음을 보여주어야 합니다.
시니어 개발자
품질과 복잡성의 수호자가 되십시오.
아키텍처, 보안, 확장성, 도메인 전문성을 더욱 날카롭게 다듬으십시오.
AI가 포함된 시스템의 실패 시나리오를 설계하십시오.
AI 생성 코드의 취약점 동향을 파악하십시오.
결제나 안전 관련 코드는 반드시 수동 검토가 필요하다는 기준을 세우십시오.
전략적이고 창의적인 업무에 집중하고, 반복적인 API 연계는 주니어와 AI에 맡기십시오.
인간 개발자의 핵심 가치인 판단력, 시스템 사고, 멘토십을 강화하십시오.
3. 역할 변화 문제
핵심 요지
개발자 역할이 AI 코드를 감사하는 제한적 역할로 축소될 수도 있고, AI 기반 시스템을 설계하고 통제하는 핵심 오케스트레이터로 확장될 수도 있습니다.
어느 쪽이든, 가치는 단순한 코딩을 넘어섭니다.
한 극단에서는 개발자가 창작자가 아니라 감시자가 됩니다.
AI나 노코드 도구가 생산을 담당하고, 개발자는 생성된 코드를 검토하고 승인합니다.
만드는 사람에서 확인하는 사람으로 바뀝니다.
코딩의 즐거움은 리스크 관리의 불안으로 대체됩니다.
이미 AI가 생성한 풀 리퀘스트를 검토하고 자동화 파이프라인을 관리하는 데 더 많은 시간을 쓰는 개발자들이 있습니다.
“AI가 던져준 쓰레기를 치우는 코드 청소부가 되고 싶지 않다”는 불만도 나옵니다.
다른 미래는 훨씬 흥미롭습니다.
개발자가 고수준 오케스트레이터로 진화하는 경우입니다.
어떤 작업을 어떤 AI나 컴포넌트에 맡길지 결정하고, 전체 시스템을 설계합니다.
AI 에이전트와 소프트웨어 서비스를 조합해 하나의 해법을 만듭니다.
에이전트 기반 개발 환경에서는 개발자가 작곡가가 됩니다.
모든 음을 직접 연주하지는 않지만, 멜로디와 구조를 정의합니다.
이 역할은 기술, 전략, 윤리가 결합된 창의적 역할입니다.
어느 방향으로 갈지는 조직의 선택에 달려 있습니다.
AI를 인력 대체로 보는 회사는 팀을 줄이고 자동화를 유지하게 할 것이고,
AI를 증폭기로 보는 회사는 인원은 유지한 채 더 큰 문제를 풀게 할 것입니다.
어떻게 대응할 것인가
주니어 개발자
코딩 외의 기회를 찾으십시오.
테스트 작성, CI 파이프라인 구성, 모니터링은 감사자 역할에 맞는 기술입니다.
개인 프로젝트로 창작의 즐거움을 유지하십시오.
시스템 관점에서 컴포넌트와 API 설계를 이해하십시오.
AI 생성 외의 자동화 도구와 오케스트레이션 도구를 익히십시오.
문서 작성과 의사소통 능력을 강화하십시오.
“코드가 동작하나요”를 넘어 “올바른 것을 고려했나요”를 묻는 개발자가 되십시오.
시니어 개발자
리더십과 아키텍처 역할을 강화하십시오.
AI와 주니어가 따를 표준과 프레임워크를 정의하십시오.
품질 체크리스트와 AI 사용 가이드를 수립하십시오.
데이터 흐름과 실패 지점을 설계 수준에서 점검하십시오.
오케스트레이션 플랫폼에 익숙해지십시오.
코드 리뷰와 설계 토론에 더 많은 시간을 쓰십시오.
제품과 비즈니스 감각을 키워, 왜 이 기능이 필요한지 이해하십시오.
코더에서 지휘자로 진화하십시오.
4. 전문가 대 범용 인력 문제
핵심 요지
좁은 전문성만 가진 개발자는 자동화로 인해 입지가 줄어들 수 있습니다.
AI 시대에는 깊이 하나와 넓은 적응력을 가진 T자형 인재가 유리합니다.
하나의 기술 스택에만 경력을 거는 것은 위험합니다.
AI가 특정 작업을 쉽게 처리하면, 그 작업에 특화된 역할은 빠르게 가치가 떨어질 수 있습니다.
과거의 COBOL, Flash 사례와 다르게, 지금은 변화 속도가 훨씬 빠릅니다.
반대로, 새로운 형태의 전문화가 등장합니다.
하나 또는 두 개 영역에 깊이를 갖고, 여러 영역을 아우르는 T자형 개발자입니다.
이들은 팀 간 연결 고리 역할을 하며, 필요할 때 공백을 메웁니다.
AI 도구는 범용 인력을 더 강하게 만듭니다.
백엔드 개발자는 AI 도움으로 UI를 만들고, 프론트엔드 개발자는 서버 코드를 생성할 수 있습니다.
현재 엔지니어 직무의 약 45%는 여러 도메인 역량을 기대합니다.
어떻게 대응할 것인가
주니어 개발자
초기에 넓은 기반을 쌓으십시오.
역할을 맡더라도, 다른 영역을 엿보십시오.
배포 과정과 Docker, 자동화 도구를 익히십시오.
진짜 흥미 있는 한두 분야를 깊게 파십시오.
“클라우드 보안에 강한 풀스택 개발자”처럼 자신을 정의하십시오.
AI를 활용해 새로운 영역을 빠르게 학습하십시오.
해커톤과 협업 프로젝트로 범용성을 키우십시오.
시니어 개발자
자신의 기술 지도를 점검하십시오.
전문 영역 옆의 인접 영역을 하나 선택해 확장하십시오.
약한 분야를 AI 도움으로라도 직접 구현해 보십시오.
통합 역할을 자청하고, 팀 간 지식을 순환시키십시오.
이력서에 범용성과 전이 가능한 경험을 반영하십시오.
T자형 롤모델이 되십시오.
5. 교육 문제
핵심 요지
컴퓨터공학 학위가 계속 표준일지, 아니면 더 빠른 학습 경로가 이를 대체할지 결정될 시기입니다.
산업 변화 속도를 대학이 따라가기 어려워지고 있습니다.
4년제 컴퓨터공학 학위는 오랫동안 소프트웨어 직무의 기본 입장권이었습니다.
하지만 이 전통은 흔들리고 있습니다.
한 시나리오에서는 학위는 여전히 필요하지만, 커리큘럼은 산업을 따라가지 못합니다.
학생과 기업은 이론과 실제의 괴리를 느끼고, 부족한 부분을 부트캠프와 자습으로 메웁니다.
다른 시나리오에서는 교육 방식이 크게 재편됩니다.
부트캠프, 온라인 인증, 포트폴리오, 기업 주도 교육이 확산됩니다.
많은 기업이 특정 직무에서 학위 요구를 제거했습니다.
실제 결과물과 검증된 기술이 새로운 통화가 됩니다.
AI는 개인 튜터와 같은 학습 환경을 제공합니다.
비싼 4년제 학위보다 접근성 높은 모듈형 학습 생태계가 형성됩니다.
어떻게 대응할 것인가
예비·주니어 개발자
학위 과정에 있더라도 그것에만 의존하지 마십시오.
실제 프로젝트와 오픈소스 기여를 병행하십시오.
산업 인증과 포트폴리오로 실무 역량을 증명하십시오.
개발자 커뮤니티에서 활동하고, 경험 많은 개발자의 추천을 얻으십시오.
AI를 개인 교사로 활용하며 지속적으로 학습하십시오.
시니어 개발자와 리더
자격증 하나로 커리어가 유지되던 시대는 끝났습니다.
지속적인 학습과 재검증이 필요합니다.
채용 기준을 기술 중심으로 재검토하십시오.
내부 교육과 도제식 역할을 지원하십시오.
학계와 대안 교육과의 연결고리가 되십시오.
실제 성과와 지속적 학습이 가장 중요한 경력 자산입니다.
공통 흐름
이 시나리오들은 서로 배타적이지 않습니다.
현실은 이들 요소를 혼합한 형태가 될 것입니다.
어떤 회사는 주니어를 줄이고, 어떤 회사는 새로운 영역에서 늘릴 것입니다.
AI는 반복 코딩을 자동화하면서, 인간이 다루는 코드의 기준을 높일 것입니다.
변하지 않는 사실은 하나입니다.
변화 자체가 상수라는 점입니다.
기술 흐름을 주시하고, 역량을 갱신하며, 인간만이 할 수 있는 판단과 창의성에 집중한다면, 어떤 미래에서도 자리를 지킬 수 있습니다.
미래를 예측하는 가장 좋은 방법은, 그 미래를 직접 설계하는 것입니다.