AI 전문가에게 묻다: ‘풀스택(Full stack)’이란 정확히 무엇인가요?
최근 AI 관련 글을 읽거나 AI 툴을 이용해 본 경험이 있다면, ‘풀스택(full-stack)’ AI 및 앱 개발이라는 말을 들어보셨을 겁니다. 구글은 독보적인 풀스택 AI 접근 방식을 갖추고 있기 때문에 전문 개발자부터 일반 이용자에 이르기까지 모두에게 강력하고 합리적인 비용의 제품을 제공할 수 있습니다. 하지만 기술 시스템에서 '풀스택'이란 정확히 어떤 의미일까요? 구글 클라우드(Google Cloud)에서 개발자 경험(Developer Experience) 부문을 이끌고 있는 구글 전문가 리처드 세로터(Richard Seroter)에게 풀스택의 의미와 함께, 이 방식을 통해 어떻게 구글이 수십억 명의 사람들에게 유용한 AI를 제공할 수 있는지 물었습니다.
첫 번째 질문입니다. 구글에서 구체적으로 어떤 업무를 맡고 계시나요?
저는 처음에 제품 매니저(PM)로 구글에 입사했고, 현재까지 약 3년 동안 개발자 관계(developer relations) 및 테크니컬 라이팅(technical writing) 팀을 이끌고 있습니다. 저희 팀은 오픈소스 프로그램 오피스(Open Source Programs Office)를 비롯해 언어·프레임워크 제품 엔지니어링을 아우르고 있으며, 소프트웨어 개발자들이 구글 클라우드 제품을 활용해 성공적으로 개발할 수 있도록 지원합니다. 개발자가 사용하는 프로그래밍 언어와 프레임워크를 구축하는 일부터, 커뮤니티와의 직접적인 소통을 통해 모범 사례(Best Practices)를 공유하고, 설명서(Documentation)를 작성하는 테크니컬 라이팅 팀을 운영하는 일까지 정말 다양한 업무를 수행합니다. 궁극적으로 저희의 목표는 개발자들이 구글 제품을 통해 원하는 바를 이뤄낼 수 있다는 확신을 주는 것입니다.
이번 인터뷰에서 다루는 주제를 고려하면, 개발자들이 구글의 풀스택 기술을 활용할 수 있도록 돕고 계신 셈이네요.
네, 맞습니다!
용어의 개념부터 정의해 보겠습니다. ‘풀스택’이라는 표현은 어디서 유래되었으며, 기술 분야에서 무엇을 의미하나요?
약 10년 전 소프트웨어 개발 분야에서 '풀스택'이라는 용어가 처음 등장했을 당시, 대다수의 사람들은 보통 애플리케이션을 떠올렸습니다. 과거에는 하나의 앱을 개발하기 위해 여러 전문 팀이 필요했습니다. 매끄러운 이용자 인터페이스(UI)를 만드는 프론트엔드(Front-end) 개발자, 서버 측 로직을 담당하는 백엔드(Back-end) 개발자, 그리고 전담 데이터베이스(DB) 팀이 필요했습니다.
'풀스택 엔지니어(Full-stack engineer)'는 이 모든 기능을 독립적으로 수행할 수 있는 개발자를 지칭하기 위해 등장했습니다. 담당자들끼리 끊임없이 컴포넌트를 주고받을 필요 없이, 풀스택 엔지니어는 대략적인 아이디어 구상 단계부터 실제로 구동되는 소프트웨어 완제품까지의 전 과정을 단독으로 처리할 수 있습니다.
앱에서 시작된 개념이 이제 AI로 확장된 것이군요?
그렇습니다. 저희는 완전히 동일한 엔드투엔드(End-to-end) 원칙을 AI에도 적용했습니다. AI를 활용해 실질적인 가치를 창출하고자 할 때 두 가지 선택지가 있습니다. 여러 업체로부터 각기 다른 요소들을 개별 구매해 직접 짜맞추는 번거로움을 감수할 것인지, 아니면 필요한 모든 기능이 이미 연결되어 있는 통합 시스템을 선택할 것인가의 문제입니다.
풀 AI 스택을 구축하기 위해 각기 다른 구성 요소들을 어떻게 결합할 수 있을까요?
AI 스택이 제 역할을 다하려면 컴퓨팅 인프라, AI 모델, 오케스트레이션(Orchestration) 플랫폼, 그리고 이용자 인터페이스(UI) 레이어가 유기적으로 결합되어야 합니다. 구글은 전략적으로 이 모든 레이어에 투자해 왔습니다. 텐서 처리 장치(TPU)와 같은 하드웨어, 구글 딥마인드(Google DeepMind)가 개발한 제미나이 모델 제품군 등의 프론티어(Frontier) 모델, 제미나이 엔터프라이즈 에이전트 플랫폼, 그리고 이용자들이 매일 사용하는 구글 지도(Maps)나 지메일(Gmail) 같은 인터페이스를 모두 제공합니다. 쉽게 말해, 저희가 고객을 대신해 필요한 요소를 찾아내어 하나의 패키지 안에 모두 담아둔 셈입니다.
구글이 AI 연구를 처음 시작했을 때부터 풀스택 접근 방식을 염두해 두었다는 것을 알고 있었나요?
이는 철저하게 의도된, 수십 년에 걸쳐 기획된 전략이었습니다. 예를 들어, 맞춤형 TPU 개발에 투자를 시작한 지는 이미 10년이 넘었습니다. 구글은 전 세계에서 가장 중요한 인터넷 서비스를 제공함에 있어, 자체 공급망과 핵심 인프라를 직접 갖추는 것이 엄청난 가치가 있음을 일찍부터 깨달았습니다. 스택 전체를 아우르는 이러한 연결고리를 갖춤(owning)으로써, 여러 외부 업체에 의존해야 하는 환경에서는 달성하기 매우 어려운 수준의 서비스, 성능 및 안정성을 제공할 수 있습니다.
반대로, 풀스택 플랫폼을 채택하면 개발자들에게 일종의 제약이 생기지는 않을까요?
충분히 가질 수 있는 우려입니다만, 특정 환경에 고객을 종속(Lock-in)시키는 것은 구글의 철학과 맞지 않습니다. 구글만큼 오픈소스에 진심인 기업은 없습니다. 구글은 전 세계 테크 업계가 기반으로 삼는 핵심 기술과 소스 코드를 정기적으로 개방하고 있습니다.
저희는 구글의 AI 플랫폼을 '주관이 뚜렷하지만 확장 가능한(Opinionated but extensible)' 플랫폼, 그리고 '별도의 추가 작업 없이 바로 쓸 수 있게 준비된(Batteries included)' 플랫폼이라고 표현합니다. 즉, 애플리케이션을 구축하고 실행하는 데 필요한 모든 것이 기본적으로 준비되어 있다는 의미입니다. 하지만 제미나이 대신 타사의 AI 모델을 이용하거나, 구글 워크스페이스(Google Workspace) 대신 다른 소프트웨어를 연동하고 싶다면 언제든 자유롭게 연결해 사용할 수 있습니다. 폐쇄적인 선택지 때문이 아니라, 이용자들이 구글 플랫폼의 높은 완성도에 만족해 매일 구글 제품을 선택해 이용하기를 바랍니다.
간편함 외에 풀스택 AI를 활용하면 또 어떤 이점이 있을까요?
구글은 인프라 운영부터 이용자에게 지메일 서비스 제공에 이르기까지, 말 그대로 스택 전체를 관리하기 때문에 시스템 안정성이 뛰어납니다. 특정 레이어에서 기술적 장애가 발생하더라도 외부 업체의 해결을 기다릴 필요 없이, 플랫폼을 직접 관리하는 이점을 살려 다른 레이어에서 이를 쉽게 감지하고 처리할 수 있습니다. 경제적인 이점도 있습니다. 외부 업체에 별도의 비용을 지불하지 않기 때문에 고객에 그 비용이 전가되지 않으며, 결과적으로 놀라울 만큼의 경쟁력 있는 가격을 제공할 수 있습니다.
구글의 풀스택 AI 기술만을 사용해 무언가를 개발하고 싶다면, 어떻게 시작하는 것이 가장 좋을까요?
구글은 전문적인 엔지니어링 지식이 없는 수십억 명의 사람들도 기술에 쉽게 접근할 수 있도록, 각자가 달성하려는 목표에 맞춰 명확한 방향을 제시하고자 노력하고 있습니다. 일반적으로 다음의 세 가지 출발점을 추천합니다.
창의적인 아이디어를 바탕으로 웹 애플리케이션 프로토타입을 빠르게 제작하고 싶다면, 구글 AI 스튜디오(Google AI Studio)가 아주 훌륭한 시작점입니다. 단 몇 분 만에 프로토타입을 만들고, 버튼 클릭 한 번으로 앱을 구동하는 클라우드 기반 플랫폼인 클라우드 런(Cloud Run)에 즉시 배포할 수 있습니다.
일상적인 업무를 자동화할 수 있는 로 코드(Low-code) 솔루션을 찾으신다면 제미나이 엔터프라이즈 플랫폼(Gemini Enterprise Platform)을 사용해 보세요. 단 한 줄의 코드를 작성하거나 들여다볼 필요 없이, 받은편지함을 정리하거나 복잡한 스프레드시트를 분석하는 워크플로우를 직접 구축할 수 있습니다.
더 복잡한 애플리케이션이나 에이전트를 더 정교하게 구축하려는 분들에게는 안티그래비티(Antigravity) 플랫폼이 매우 강력한 툴이 될 것입니다. 플랫폼이 제공하는 풍부한 인터페이스를 활용하면 고급 프로그래밍 지식이 없어도 정교한 시스템을 구축할 수 있습니다.