네 시작은 ‘장난·부업·취미’였을지라도… ‘팻 프로젝트’ 이야기

Posted by:

|

On:

|

부업 프로젝트(side projects), 취미 프로젝트(hobby projects) 등으로도 불리는 팻 프로젝트(Pat projects)는 이름 그대로 정규 업무와 별개로 진행한는 활동을 의미한다. 특히 소프트웨어 개발자가 팻 프로젝트에 몸담는 경우가 많다. 이러한 프로젝트는 개발자가 새로운 기술과 스킬을 배우거나 새로운 개념과 접근 방식을 테스트하는 데 훌륭한 수단이 된다. 즉흥적인 아이디어에서 비롯되든 지속적인 열정에서 비롯되든, 일상적 업무보다 더 대담하고 도전적이며, 성장의 기회를 제공한다.

스택 오버플로우의 한 연구에 따르면, 개발자의 68%가 업무 외 시간에 취미로 코딩을 한다. 또 약 40%는 온라인 강좌를 통해 전문성 개발이나 자기 주도 학습을 위해 업무 외 시간에 코딩을 한다. 조사 대사 중 업무 외 시간에 코딩을 하지 않는 사람은 12%에 불과했다고 스택 오버플로우는 밝혔다.

특히 스마트 홈 애플리케이션과 게임 개발은 개발자들에게 인기 있는 부업 프로젝트다.

  • 깃허브의 옥토버스 보고서에 따르면, 2024년 전 세계 개발자들이 깃허브의 오픈소스 및 공개 리포지토리에 기여한 기여도는 놀랍게도 10억 건에 달했다. 오픈소스 홈 자동화 프로젝트인 홈 어시스턴트(Home Assistant)가 이 중 상당 부분을 차지했다.
  • 가장 인기 있는 취미 프로젝트용 게임 엔진은 유니티(48%)였으며 두 번째로 인기 있는(28%) 것은 고닷(Godot)이다. 고닷은 MIT 라이선스를 통해 완전히 무료이고 오픈소스이며, 깃허브에 2만 1,000개의 포크가 있다. 퍼포스의 2024 게임 기술 현황 보고서(State of Game Technology Report)에 따르면, 고닷은 인디 및 중형 스튜디오에서 언리얼 엔진과 유니티에 대한 인기 있는 대안으로 부상하고 있으며, 9%의 시장 점유율을 차지하고 있다.

코딩을 멈추지 않는 개발자들

필자가 마이크로소프트 리서치에서 만난 한 컴퓨터 그래픽스 연구원은 주변에서 보는 모든 것을 코드로 구현하는 데 열중하고 있었다. 그 중에는 가이 포크스 나이트(Guy Fawkes Night)의 불꽃놀이도 포함되어 있었다. 제트브레인의 한 개발자 옹호자가 한 컨퍼런스의 여행 시스템을 개발한 저자라는 사실을 알게 되어 놀랐던 경험도 있다. 즉 개발자들은 취미로도 코딩을 하는 경향이 뚜렷하다. 사실 이 취미(?)는 기술의 급속한 발전에 따라잡는 데 도움이 되기도 한다.

실제로 해고를 경험한 바 있는 개발자들에게 팻 프로젝트는 최신 동향을 따라가는 방법이 되었다. 제트브레인의 개발자 생태계 보고서 2024(State of Developer Ecosystem Report 2024)에 따르면, 응답자의 16%가 지난 2년 동안 해고된 바 있으며, 14%는 대규모 해고로 영향을 받은 기업에서 근무했다.

JetBrains research layoffs

JetBrains

일자리를 잃은 개발자들은 경력 단절 기간을 활용해 기술 역량을 확장한다. 그들은 수년 전 일상 업무 아래 묻혀 있던 프로젝트를 다시 꺼내어 시간과 노력을 투자하며 새로운 기술을 배우고 새로운 아이디어를 탐구한다.

물론 모든 사람이 오랜 무직 기간을 감당할 수 있는 것은 아니다. 일자리를 잃은 일부 개발자들은 현대 기술을 배우고 새로운 일자리를 빠르게 얻기 위해 교육 과정을 집중적으로 수강한다. 이 과정에서 소규모 팻 프로젝트에 기여하는 경우도 있다.

팻 프로젝트는 개발자의 직업적 경력의 첫 걸음이 될 수 있다. 2024년 기술 분야 경력 전환자들을 조사한 젯브레인의 개발자 생태계 보고서 2024는 다음과 같은 연구 결과를 담고 있다.

조사에 참여한 소프트웨어 개발자의 22%가 이전에 다른 직종에서 근무한 경험이 있었다. 이는 이 직업의 접근성, 또 이 직업의 매력을 반영한다. 경력 전환자들은 필수 프로그래밍 언어와 소프트웨어 개발 원칙에 대해 탄탄한 기반을 구축하는 것이 중요하다. 프로젝트, 인턴십, 코딩 부트캠프를 통해 실용적인 경험을 쌓는 것은 이 중요한 인생 변화를 촉진하는 데 도움이 된다.

보고서에 따르면, 응답자들이 개발자가 되기로 결심한 두 번째 주요 요인은 무료 온라인 강의와 코딩 학교였다:

JetBrains research education

JetBrains

많은 교육 과정이나 훈련 자료는 팻 프로젝트를 학습의 핵심 방법으로 강조한다. 자신의 독립적인 아이디어를 구현하거나 다양한 오픈소스 프로젝트 중에서 선택할 수 있다.

C++ 개발을 바꾼 팻 프로젝트

컴파일러 익스플로러는 현재 개발자들 사이에서 인기 높은 자원 중 하나다. 이 도구의 창시자 맷 고드볼트의 성인 고드볼트(Godbolt)는 ‘godbolting’이라는 동사로 변형되어 사용되고 있다. 컴파일러 최적화를 이해하고 현대 컴파일러의 작동 원리를 탐구하는 과정을 설명하는 의미다.

고드볼트는 저지연 거래 분야에 종사한다. 더 빠른 코드가 수익성 있는 거래 기회를 더 빠르게 효율적으로 식별하는 분야다. 그는 CppCon 2017 기조 연설에서 ‘What Has My Compiler Done for Me Lately?‘라는 제목으로 컴파일러 익스플로러 개발에 대한 이야기를 들려준 바 있다. 그 연설 한 달 후 젯브레인의 C++ 팀과의 인터뷰에서도 고드볼트는 프로젝트에 대한 이야기를 공유했다:

친구와 나는 일반 for-루프 대신 range-for를 사용할 수 있는지 고민하던 중, 컴파일러가 새로운 기능에 대해 좋은 코드를 생성하는지 확인하고 싶었다. 나는 컴파일러 출력을 빠르게 dump하는 간단한 스크립트를 작성했고, 그렇게 컴파일러 익스플로러가 탄생했다!

트레이딩 시스템 개발자의 일상 업무를 돕기 위한 팻 프로젝트로 시작된 것이 커뮤니티 전체의 풍경을 바꿨다. 이제 사람들은 컴파일러 익스플로러를 널리 사용하며, 사이트에 영구 링크를 공유해 코드 샘플을 공유한다. C++ 표준화 기여자들은 언어 제안서에 컴파일러 익스플로러의 코드 예제 링크를 포함하는 것이 표준 관행이 되었을 정도다. 허브 셔터(Herb Sutter)는 제안서에 컴파일러 익스플로러에서 실행되는 메타클래스 예제 링크를 포함해 이 트렌드에 크게 기여했다. Clang 분기에서의 테스트 구현은 제안서를 위원회에 제출하기 전에 완료되었으며, 컴파일러 익스플로러에 배치되어 제안서에 참조됐다. 현재 컴파일러 익스플로러에는 수십 개의 C++ 언어 제안서 중 하나에 참조된 Clang 기반 분기가 많이 있다. 새로운 아이디어가 언어에 승인되거나 위원회에서 심도 있게 논의되기 전에 테스트 구현을 먼저 만드는 것이 트렌드가 되었다.

Compiler Explorer

JetBrains

전 세계의 열정적인 개발자들에 의해 많은 다른 언어들이 컴파일러 익스플로러에 추가됐다. 이 서비스는 이제 대형 기업들의 후원과 기부로 지원되고 있다. 마이크로소프트는 매트에게 컴파일러 익스플로러에서 사용할 수 있도록 자체 소유의 MSVC 컴파일러 버전을 제공하기도 했다. 모든 것은 소박한 팻 프로젝트에서 시작됐다.

팻 프로젝트에서 다음 큰 트렌드로

팻 프로젝트 문화는 기업에 큰 혜택을 가져다줄 수도 있다. 팻 프로젝트는 개발자들이 창의성을 발휘하고 새로운 아이디어를 탐구할 시간을 제공함으로써, 직원 만족도를 높이고 비용 효율적으로 혁신을 이끌어낼 수 있는 창의성을 자극한다. 많은 유명한 제품들이 이 방식으로 시작됐다. 몇 가지 예를 들자면 다음과 같다.

  • 소니 플레이스테이션의 아버지인 켄 쿠타라기의 이야기는 할리우드 영화 시나리오로도 손색이 없다. 그의 독점적 CD-ROM 기반 3D 그래픽 비디오 게임 시스템은 회사 내부의 비판과 회의론을 받았지만, 결국 전 세계에서 가장 인기 있는 게임 콘솔로 자리 잡았다.
  • 구글의 폴 부헤이트가 개발한 지메일도 유명한 팻 프로젝트다. 폴은 구글에 입사하기 전부터 이 아이디어를 구상했다. 당시 ‘프로젝트 카리부’로 불렸던 지메일은 폴의 이메일 검색 엔진이었다. 베타 버전은 2004년에 출시됐으며, 이후 지메일은 널리 사용되는 이메일 서비스 중 하나로 성장했다.
  • X(구 트위터, 원래 이름은 twttr)는 기업의 핵심 사업이 단 하나의 프로젝트로 전환될 수 있는 또 다른 사례다. 오데오(Odeo) 직원용 내부 SMS 서비스에서 시작된 이 팻 프로젝트는 인터넷 성공 사례 중 하나로 성장했다.
  • 젯브레인의 툴박스 앱(Toolbox App)은 회사 해커톤에서 탄생했다. 다양한 젯브레인 데스크톱 도구의 설치, 업데이트, 제거 과정을 간소화한다는 아이디어에서 출발했다. 현재 이 앱은 모든 젯브레인 데스크톱 도구의 주요 진입점으로 인정받으며, 매일 100만 명 이상의 개발자가 사용한다.

젯브레인의 툴박스 앱처럼 기업의 핵심 사업에 기여하는 많은 팻 프로젝트가 회사 해커톤에서 탄생하거나 개발된다. 해커톤은 직원들이 아이디어를 발표하고 동료들을 초대해 지원받으며, 하루나 이틀 동안(때로는 24시간 내내) 프로토타입을 개발하는 행사다. 기업은 직원들의 참여를 장려하기 위해 음식, 마사지나 휴게실 같은 여가 시설, 내부 자원 및 서비스 접근 권한을 제공한다. 금전적 상금과 함께, 주목할 만한 프로젝트를 인정하기 위해 회사 전체 시상식이 자주 개최된다.

팻 프로젝트는 단기적일 수도 있고 반복적일 수도 있다. 구글의 20% 시간 정책은 많은 다른 대형 조직에서 채택됐다. 개발자의 20% 시간을 할당할 수 없는 소규모 기업이나 스타트업은 정기적인 해커톤이 좋은 대안이 될 수 있다. 표준 시간 정책을 도입할 수 있는 기업에서는 이 정책을 직원 혜택으로 홍보하는 경우가 많으며, 장기 휴가나 연장 보험과 같은 혜택과 유사하게 제시된다.

팻 프로젝트의 부작용

직원들에게는 명확한 장점이 있지만, 팻 프로젝트 문화가 회사에 전반적으로 유익할까? 최소 비용으로 지메일이나 플레이스테이션과 같은 제품을 출시할 수 있다면 경영진은 환영할 것이다. 그러나 많은 기업은 다음과 같은 팻 프로젝트의 단점을 겪게 된다:

  • 팻 프로젝트는 직원들의 시간을 상당량 차지해 주요 업무에 집중력과 에너지를 분산시킨다. 여러 프로젝트를 동시에 진행할 때 동일한 수준의 열정을 유지하기 어렵고, 개발자들이 핵심 업무보다 팻 프로젝트에 더 몰입할 수 있다. 이 노력은 결과에 영향을 미쳐 핵심 업무의 진행 속도를 늦추고 혁신 수준을 낮춘다.
  • 팻 프로젝트가 회사 자원을 사용해 진행될 경우 비용은 회사 예산에서 할당된다. 회사 전체 클라우드 자원, CI/CD, 대규모 언어 모델 등 자원의 사용을 고려해야 한다. 팻 프로젝트의 실험적 특성상 이러한 비용은 높고 예측하기 어려우며, 제대로 관리되지 않기 십상이다.
  • 팻 프로젝트의 실패 위험과 회사가 아무런 이익을 얻지 못할 위험은 높다. 또한 팻 프로젝트에 대한 위험 평가가 거의 이루어지지 않는다.
  • 팻 프로젝트가 프로토타입을 넘어 발전한 후 새로운 제품을 잃을 위험도 높다. 팻 프로젝트가 성공적인 사업으로 발전한 직원들은 원래 회사에서 퇴사해 자신의 스타트업을 설립하거나 새로운 투자자를 찾아 독립적으로 아이디어를 개발하는 경우가 많다.

많은 회사 관리자들이 위와 같은 위험을 실제 경험했다. 이미 온라인 미디어 곳곳에서 팻프로젝트를 회사에 이익이 되는 공식 활동으로 전환하는 방법을 설명하는 기사를 찾을 수 있다. 이들은 일반적으로 다음과 같은 조언을 전한다:

  • 연구 분야를 설정하고 팻 프로젝트의 방향을 관리하여 회사 핵심 사업이나 타겟 고객과 관련성을 유지하도록 한다.
  • 팻 프로젝트를 정기적으로 검토하여 진행 상황을 관리한다.
  • 지적 재산권을 확보하여 프로젝트와 핵심 기여자를 잃지 않도록 한다.
  • 산출물(deliverables)를 추적하고 프로젝트 및 KPI를 관리한다.

그러나 회사 요구사항과 개발자가 원하는 자유 사이의 균형을 맞추는 것은 어려울 수 있다.

무료 도구 활용하기

마지막으로, 팻 프로젝트는 새로운 또는 익숙하지 않은 개발 도구를 시도해 볼 수 있는 기회를 제공한다. 20% 이니셔티브를 추진하는 경우라면 회사가 필요한 도구를 제공할 수 있다. 그러나 프로젝트가 회사 프로그램에 속하지 않는 경우 개발자는 무료 도구를 사용해야 할 수 있다. 다행히 많은 도구 공급업체는 비상업적 프로젝트에 상업용 기술을 무료로 사용할 수 있도록 허용한다. 예를 들어 다음과 같다.

  • 유료 게임 엔진인 유니티나 언리얼 엔진은 특정 매출 기준 이하일 경우 무료 사용을 허용한다.
  • 마이크로소프트는 팻 프로젝트의 요구사항에 대응해 비주얼 스튜디오의 커뮤니티 버전을 개발자에게 제공한다.
  • 2024년 10월, 젯브레인은 상업적 사용을 제외한 무료 라이선스 등급으로의 전환을 발표했다.

비상업적 라이선스는 학습 및 자기 교육, 취미 개발, 콘텐츠 제작자에게 적합하다. 예를 들어, 게임 개발을 시작하려는 경우:

  • 유튜브나 기타 교육 자료에서 무료 크래시 코스나 튜토리얼을 선택한다.
  • 깃허브에서 무료 샘플 프로젝트를 포크한다.
  • 무료 게임 엔진을 시작하고 실습을 통해 배운다.
  • 튜토리얼 추천이나 개인 취향에 따라 무료 IDE를 시도해 본다.

누가 알까? 게임 개발이 커리어 여정의 큰 계기가 될 수 있다. 팻 프로젝트의 성격이 무엇이든, 현재 또는 미래의 회사에서 가치 있게 여길 지식, 경험, 기술을 거의 확실히 얻을 가능성이 크다.

C++ 개발자인 Anastasia Kazakova는 현재 젯브레인에서 마케팅 및 비즈니스 개발 대표를 맡고 있다.
[email protected]

Posted by

in

Leave a Reply

Your email address will not be published. Required fields are marked *