원문: TypeScript’s rise in the AI era: Insights from Lead Architect, Anders Hejlsberg
아네르스 하일스베르가 타입스크립트를 만들기 시작한 2012년에는 자바스크립트와 겨룰 새 언어를 고안하려던 건 아니었습니다. 그는 그저 굉장히 현실적인 문제를 해결하려던 것뿐이었죠. 자바스크립트가 웹의 뼈대가 되었지만, 대규모의 다중 개발자 코드베이스로 커지기에는 무리가 있었기 때문입니다. 여러 개발팀들은 수백만 줄의 느슨하게 타입이 부여된 코드를 계속 프로덕션에 배포하고 있었고, 자바스크립트는 과하게 복잡해진 시스템을 제어하는 데 아무런 도움도 주지 못했습니다.
하일스베르는 "내 기억으로는 자바스크립트 사용자의 25%만 관심을 가진다고 해도 충분한 성과를 거둔 것이라고 생각했어요. 하지만 지금은 어떤가요? 정말 놀라울 정도예요."라고 말했다.
처음엔 단순한 현실적 문제를 해결하기 위한 패치에 불과했던 것이, 이후 현대 개발 패러다임 자체를 뒤흔들어 놓았습니다. 2025년에는 타입스크립트가 GitHub에서 가장 많이 사용된 언어로 올라서며 처음으로 자바스크립트와 파이썬 모두를 제쳤습니다. 올해만 백만 명이 넘는 개발자가 타입스크립트로 작업했는데 Octoverse 기준으로 이는 66% 증가한 것입니다.
자바스크립트에 타입을 입힌 상위집합(타입스크립트)가 어떻게 AI 시대에 우세한 언어가 된 것일까요? 앤더스와 함께 그 진화와 성능, 그리고 애초에 ‘사람 간의 협업’을 더 잘하기 위해 만들어진 언어가 어떻게 지금은 AI 보조 코딩을 구동하는 기반이 되었는지에 대해 이야기해봤습니다.
*앤더스(Anders)의 발화를 번역한 부분은 이탤릭체로 '이름: 쌍따옴표' 형식으로 내용 번역
앤더스: "우리가 프로젝트(타입스크립트 프로젝트)를 시작했을 때, 자바스크립트 사용자의 25%만 흡수하더라도 성공이라고 생각했어요. 그렇지만 지금 얼마나 많은 사람들이 사용하는지 보세요. 팀원 전체가 놀랐어요."
2012년으로 되돌아가 보면 이미 자바스크립트는 단단히 자리잡고 있었습니다. TypeScript의 승부수는 그 고착된 JavaScript를 대체하는 데 있지 않았습니다. 대신, 세계에서 가장 유연하고 제약이 거의 없는 언어에 타입과 개발 도구 생태계, 리팩터링 가능성을 더해, 대규모 JavaScript 개발 프로젝트를 정상화하는 데에 초점을 두고 있었다.
10년 뒤 그 승부수는 표준이 되었습니다. 거의 모든 최신 프론트엔드 프레임워크(React, Next.js, Angular, SvelteKit)는 이제 타입스크립트로 초기 템플릿을 설정할 수 있게 지원합니다. 결과적으로 더 안정적인 코드베이스, 더 나은 자동완성, 그리고 새벽 3시에 undefined 하나 때문에 디버깅하던 악몽 같은 상황이 훨씬 줄어들게 됐죠.
앤더스: “마법 같은 점은 타입스크립트가 마치 자바스크립트처럼 느껴지면서도, 슈퍼 파워를 가진 것처럼 사용할 수 있다는 거예요.”
타입스크립트가 정확히 뭘까?
타입스크립트는 바닐라 자바스크립트로 컴파일되는 자바스크립트에 타입이 적용된 상위집합 오픈소스입니다. 정적 타입 검사, 인터페이스, 제네릭 그리고 최신 언어 특징들을 추가한 뒤, 컴파일 시점에 이를 모두 제거하여 결과물이 자바스크립트로 실행되는 모든 환경에서 동작하도록 만듭니다.
왜 개발자들이 사용할까?
- 타입 에러를 런타임 전에 잡아냄
- IDE 자동완성과 리팩터링 성능 향상
- 대규모 코드베이스를 여러 팀이 함께 유지보수하기 쉬워짐
- 프레임워크와 AI 지원 개발 도구와도 매끄럽게 통합됨
사용처: 프론트엔드 프레임워크, 백엔드 시스템(Node.js, Deno), SDK, 디자인 시스템, 그리고 최근에는 코드 안전성을 위해서 엄격한 타입 적용이 요구되는 AI 주도 프레임워크에서 사용됨
타입스크립트가 발표됐을 때, 타입스크립트 그 자체로 작성된 언어로 유명해졌습니다. 덕분에 컴파일러는 이식 가능(portable)하고 커스터마이징(hackable)하기 쉬웠습니다. 그러나 시간이 지나면서 성능 문제가 점점 부각됐습니다.
앤더스: "타입스크립트로 만든 걸 포기해야하는 건 정말 고통스러웠어요. 하지만 여기서 더이상 성능을 끌어내지 못한다는 것도 알고 있었죠."
우리는 C#부터 여러 언어를 시험해봤지만 결국 Go를 선택했어요. 성능은 10배가 좋아졌죠. 절반은 네이티브 최적화에서, 나머지 반은 공유 메모리 기반 동시성에서 나온 거였습니다. 성능이 10배로 좋아지는 걸 무시하긴 어려웠어요.
다시 만든 컴파일러는 더 빨라지고, 더 가벼워졌으며 엔터프라이즈급 코드베이스로 확장 가능해졌습니다. 기능 자체는 기존 타입스크립트로 만들어진 것과 동일했지만요.
앤더스: "우리는 이전 컴파일러의 특징과 버그까지 그대로 재현한 네이티브 컴파일러를 가지고 있습니다. 사용자들은 기존 코드를 버릴 필요가 없습니다."
성능을 개선하면서도 기존 방식을 유지하려는 이런 철학 덕분에 개발자들이 타입스크립트를 신뢰합니다. 몇 년마다 완전히 새로 만드는 게 아니라, 호환성을 유지하도록 설계된 진화적 시스템이기 때문이죠.
앤더스는 오픈소스를 자연 선택을 닮은 생태계에 비견합니다.
앤더스: "오픈 소스는 큰 실험이에요. 누구도 자금을 마련하는 방법을 알아내지 못했지만 그럼에도 불구하고 지금 우리는 여기 있습니다. 오픈 소스는 그 어느 때보다 거대해졌고, 사라지지 않을 겁니다. 코드 속에 진화가 그대로 담겨 있는 셈이죠."
올해 Octoverse 데이터를 되돌아보면 개발자들은 거의 10억 개의 커밋을 푸시했으며 이는 25% 성장한 수치입니다. 그리고 11억 2천만 개의 커밋은 오픈소스 레포지토리에 푸시됐습니다. 그건 하나의 풀 리퀘스트(pull request)씩 기록된 진화의 기록입니다.
타입스크립트 레포지토리에는 12년에 걸친 이슈, 풀 리퀘스트, 설계 노트가 쌓여 언어 진화의 살아 있는 아카이브가 되었습니다.
앤더스: "우리는 GitHub에 12년치 역사가 기록되어 있어요. 모두 검색할 수 있습니다. grep으로 살펴볼 수 있는 진화죠."
Octoverse 2025에서 가장 인상깊은 데이터는 AI가 어떻게 개발언어 선호도를 바꾸는가였습니다. 개발자들은 AI 지원 개발을 훨씬 믿을만하고 유지 가능한 타입이 적용된 언어로 변경하고 있었습니다.
앤더스는 이유를 이렇게 설명했습니다.
앤더스: "AI가 어떤 개발언어로 코드를 작성하는 능력은 그 언어를 얼마나 접해봤는지에 따라 달라집니다. AI는 알고 있는 사실을 확대 적용하는 거대한 반복생성기예요. AI는 이미 엄청난 양의 자바스크립트, 파이썬, 타입스크립트 코드를 봐왔기 때문에 잘 작성할 수 있어요. 새로운 개발언어들은 사실상 불리한 거죠."
축적된 개발 언어 데이터와 TypeScript의 정적 타입 시스템이 결합되면서, TypeScript는 AI 중심 워크플로우에 특히 잘 맞는 언어가 되었습니다.
앤더스: "AI에게 50만줄의 코드를 번역해달라고 요청하면 중간에 잘못된 결과를 도출하는 '환각' 현상이 일어날 거예요. 하지만 하지만 그 번역을 결정적으로(deterministically) 수행하는 프로그램을 생성해달라고 요청하면, 훨씬 신뢰할 수 있는 결과를 얻을 수 있습니다. 이런 종류의 문제가 바로 ‘타입’이 존재하는 이유죠."
결론적으로 사람이든 AI든 함께 코드를 작성하는 시대에 타입은 번거로운 형식 절차가 아니라, 코드의 ‘정확성’을 확인하는 방법입니다.
거대 LLM의 성장은 "개발자 도구"의 의미마저 바꿔놓았습니다. IDE는 이제 개발자들을 위한 개발환경일뿐만 아니라 에이전트를 위한 것이기도 합니다.
AI는 보조도구로서 시작됐습니다. 지금은 실질적인 일은 AI가 하고 인간은 감독을 하죠. 이제 IDE 활용법은 달라졌습니다.
Octoverse 보고서는 이 변화를 "AI가 코드뿐만 아니라 선택지를 재구성하고 있다"고 설명했습니다. 타입스크립트처럼 타입이 적용된 개발 언어는 에이전트가 안전하게 리팩터링하고, 의미적 쿼리를 처리하며, 코드베이스를 결정적으로(reason deterministically) 이해할 수 있도록 필요한 구조를 제공합니다.
앤더스: "목표는 AI 워크플로우가 탈선하지 않으면서도 유용성을 유지할 만큼만 ‘결정성의 울타리’를 쳐주는 것입니다."
터보 파스칼에서 C#, 타입스크립트에 이르기까지 앤더스가 한 작업은 몇십 년에 걸쳐 확장됐습니다. 그러나 가장 놀라운 건 그의 꾸준함이죠. 그는 복잡한 코드베이스를 더 쉽게 분석하고 유지보수할 수 있도록 개발 언어를 발전시켰습니다.
변화를 만들어내는 것보다 짜릿한 일은 없어요. 타입스크립트는 계속 발전하지만, 항상 핵심은 같습니다. 개발자가 의도를 명확하게 표현할 수 있도록 돕는 것이죠.
이런 명확성이 2025년 한 해 동안 매초 새로운 개발자가 GitHub에 합류하고, 그중 점점 더 많은 이들이 타입스크립트로 시작하게 되는 이유일지도 모릅니다.
타입스크립트에 대한 이 이야기는 단순히 언어 설계에 관한 것이 아닙니다. 이건 ‘진화’에 관한 이야기입니다. 자바스크립트의 대규모 코드 문제를 해결하기 위한 프로젝트로 시작했지만 개발자가, 그리고 지금은 AI와 함께 코드를 작성하는 기반이 되었습니다.