GraphQL을 쓰고 있는 유명 기업들 - 0: 왜 그들은 GraphQL을 도입 했을까

한국에서는 아직 graphql 사용 사례를 찾아 보기 힘들다. graphql이라는 용어 조차도 생소한 사람들이 많을 것이라고 생각한다. 소수의 스타트업에서의 적용 사례를 컨퍼런스에서 보긴 했지만 메이저 회사들에서 graphql을 사용하고 있다는 소식을 아직 접해보진 못했다.
하지만, 해외는 사정이 다르다. 스타트업들은 말할 것도 없고, 메이저 회사들 역시 graphql을 도입하고 있으며, 그 사례를 적극적으로 공유/발표 하기도 한다. 또한, 몇몇 큰 기업들(깃헙, shopify 등)은 public api를 graphql로 제공하기도 한다.
사실, graphql이라는 스펙과 그 기반 기술은 페이스북에선 몇년전부터 써왔다곤 하지만 오픈소스화 된지는 그리 오래되지 않은 신기술이다. 신기술 도입의 큰 걸림돌은 기술에대한 안전성과 도입 사례들을 찾아보기 힘들다는 것에 있다.
presentation
graphql이 오픈소스화 된진 얼마 되지 않았지만 많은 기업들이 이미 프로덕션 레벨에서 사용을 하고 있고, graphql을 도입 함으로써 얻게 되는 이점에 대한 사례들 역시 해외에서는 많이 접할 수 있다.
스타트업이야 처음 설계 시점부터 graphql을 염두하고 설계를 할 수 있다지만, 기존 서비스 되고 있는 시스템에 graphql을 도입하는 이유는 무엇일까. 단순히 힙(hip)하고 좋은 기술이라고 해서 시간과 비용 서비스 안전성에 대한 리스크를 짊어지고 graphql을 도입하는 것은 당연히 아닐 것이다.
아무래도 graphql이 기존에 Rest API가 가지고 있던 여러 문제점들을 해결 하고, 시스템 전체가 아닌 일부분만을 적용 한 후 점차적으로 graphql 서비스를 확대해 나갈 수 있도록 접근 했다는 데에서 많은 기업들이 graphql을 도입하는 게 아닐까 싶다.
presentation
이 연재는 graphql을 개발 레벨(용어, 문법 등)에 대해 깊이 논하지는 않을 것이다. 그보다는 실제로 기업 또는 서비스에서 graphql을 왜 도입 했는지, 그들은 어떤 문제를 graphql로 풀어내었고 또 어떤 장점을 얻었는지를 분석하는데 집중 할 것이다.
이를 통해 기존 서비스에 graphql을 도입함으로써 어떤 부분에 문제점을 개선 할 수 있을지 인사이트를 얻어가는 데 목적을 둔다.
실제로 앞으로 다룰 사례들은 대체로 어떤 기준에서 graphql과 기반 라이브러리(예를들어, 클라이언트, 서버 graphql 라이브러리는 무엇을 선택 했는지)를 선택했고, 어떻게 서비스 마이그레이션을 했는지에 대한 것이다. graphql 도입을 염두 하고 있거나 여러분의 상사를 설득하기 위해서이거나 기술적 흥미가 있는 분이라면 도움이 될 것이라고 생각한다.
앞으로 이 시리즈는 미디엄(Medium)을 시작으로 깃헙(Github), Shopify 등등의 사례들을 분석해보며 이들이 graphql을 어떻게 왜 도입하고 사용하고 있는지를 살펴보도록 하겠다.