Eddie Kim의 Ruby on Rails 여정
-
에디 킴은 2006년 대학 졸업 후 첫 직장에서 웹 개발 기회를 얻었고, HackerNews를 통해 DHH의 ‘15분 만에 블로그 만들기’ 스크린쉐어 영상을 접하며 Ruby on Rails(당시 1.8 버전)에 깊이 매료되었습니다.
-
당시에는 불가능해 보였던 빠른 개발 속도에 감탄하며 Ruby 언어와 Rails 프레임워크를 독학했고, 이후 모든 웹 개발 프로젝트에 Rails를 사용하며 숙련도를 높였습니다.
-
그는 Y Combinator를 통해 창업한 첫 스타트업인 사진 공유/인쇄 서비스 ‘Pikwing’에서도 Rails를 활용하여 빠르게 서비스를 구축했습니다.
Gusto (구 Zen Payroll) 창업과 Rails 선택
-
첫 스타트업의 실패 후, 에디 킴은 대학 친구이자 현 Gusto CEO인 조쉬(Josh)와 2012년 Gusto(당시 Zen Payroll)를 공동 창업했습니다.
-
그는 한국 이민자 부모님이 소규모 사업체를 운영하며 겪었던 백오피스 관리의 어려움(급여 계산, 세금 납부, HR 규정 준수 등)을 직접 경험하며, 소프트웨어가 소상공인의 시간을 절약할 수 있다는 확신을 가졌습니다.
-
창업 초기, Gusto는 자신들의 시스템으로 급여를 지급할 수 있을 때까지 급여를 받지 않겠다는 목표를 세웠습니다. 이때, 에디 킴이 가장 익숙하고 빠르게 개발할 수 있는 Rails를 선택한 것이 성장의 핵심 동력이 되었습니다. 그는 스타트업에게 언어나 프레임워크 논쟁보다 ‘속도’가 가장 중요하다고 강조했습니다.
Rails 모놀리스 확장 전략
-
현재 Gusto는 1000만 라인 이상의 Ruby on Rails 코드와 수백 명의 개발자를 보유한 대규모 기업으로 성장했습니다. 그럼에도 불구하고 Rails 모놀리스를 유지하고 있으며, 이는 코드베이스 재작성의 막대한 비용과 속도 저하를 피하기 위한 전략입니다.
-
Gusto는 Shopify에서 시작된 ‘Packwerk’와 같은 내부 툴링에 적극적으로 투자하여 Rails 모놀리스의 확장성을 확보하고 있습니다. Packwerk는 대규모 Rails 코드베이스를 관리하고 모듈화하는 데 도움을 주는 도구입니다.
Rails 및 Ruby의 개선점
-
에디 킴은 대규모 Rails 애플리케이션 개발 시, 초기 단계와 달리 프레임워크가 제공하는 ‘명확한 가이드라인(opinionated)’이 부족하여 ‘와일드 와일드 웨스트’와 같은 상황이 발생할 수 있다고 지적했습니다.
-
또한, Ruby 언어의 동적 타이핑(dynamic typing)을 개선점으로 꼽았습니다. 그는 10년 전보다 정적 타이핑(static typing)의 중요성을 더 크게 느끼고 있으며, 특히 AI 시대에는 정적 타이핑 언어가 코드 생성 AI에 더 유리하다고 주장했습니다. Sorbet과 같은 솔루션이 있지만, 프레임워크 차원의 지원 확대를 희망했습니다.
-
그는 Rails 커뮤니티에 대한 지속적인 투자가 개발자 생태계를 활성화하고 인재 확보에 도움이 될 것이라고 강조했습니다.
AI 시대의 Rails
-
에디 킴은 AI 기반 애플리케이션 개발이 주로 애플리케이션 레이어(API 호출, 데이터베이스 서비스 연동 등)에서 이루어지므로, Ruby on Rails가 AI 스택 구축에 충분히 적합하다고 설명했습니다.
-
다만, Python에 비해 Ruby용 AI 관련 라이브러리(SDK)가 부족하다는 점을 언급했으나, 최근 Anthropic 및 OpenAI의 공식 Ruby SDK가 출시된 것을 긍정적으로 평가했습니다.
-
‘Agentic 워크플로우’에 대해, 그는 LLM이 비동기적으로 배경에서 작동하며, 직접적인 지시가 아닌 자체적인 추론을 통해 액션을 취하고 도구를 활용하는 아키텍처로 정의했습니다. 이는 기존 백그라운드 작업과는 다른 자율적인 특성을 가집니다.
가장 좋아하는 Ruby Gem
- 에디 킴의 가장 좋아하는 Ruby Gem은 ‘Devise’입니다. 그는 인증(authentication)이 가장 어려운 작업 중 하나인데, Devise 덕분에 로그인, 비밀번호 재설정 등 복잡한 기능을 쉽고 빠르게 구현할 수 있어 Rails를 더욱 사랑하게 되었다고 밝혔습니다.