Skip to main content
[개안뽑] ㉝제프 베조스를 부자로 만든 것은 (줏대없는) 개발자들이었다
Picture

Member for

4 months
Real name
Keith Lee
Bio
Head of GIAI Korea
Professor of AI/Data Science @ SIAI
개발자들이 AWS를 자꾸 쓰려고 했기 때문에 AWS가 뜬 거지, 실제로 AWS가 필요한 기업들은 많지 않았음
특히 한국 기업들 중에 AWS가 필요했던 기업은 극소수에 불과, 대부분은 자체 서버가 훨씬 저 비용 옵션이었을 듯
아마존이 수익성 사업을 못 찾다가 AWS로 처음 수익을 냈던 만큼, 결국 개발자들이 아마존을 세계 1등 기업으로 만들어 준 것

지난 금요일, 6년째 운영하던 AWS 계정을 닫았다. IT사업을 접으려는 것이 아니라, 더 이상 AWS를 쓸 필요가 없다는 확신이 들었기 때문이다. 사실 서비스 자체의 활용을 중단한 것은 10월 말이었고, 만 2달 정도 혹시나 더 접속해야할 일이 있지 않을까는 생각에 유지 비용을 쓰다가, 더 이상은 돈을 길바닥에 내버릴 필요가 없다는 결론에 이르렀다.

앞으로 클라우드 환경에서 IT서비스를 운영할 생각이 없냐는 질문이 나올 수도 있고, 혹시 AWS 쓸 줄 모르냐는 질문을 받을 수도 있을 것 같다. 쓰기에 어렵게 만들어놓은 시스템이 아니고, 대부분은 굉장히 문서를 잘 만들어 놨기 때문에 찾아서 쓰는데 크게 어렵지는 않았다. 굳이 따지자면 문서를 만들어 놨는데 내가 못 찾거나, 귀찮다는 이유로 안 찾아봤던 경우가 있기는 했었다. AWS 계정을 닫은 것은 IT서비스를 운영하는 환경으로 더 이상 Global Deploy를 위해 AWS의 각종 서비스를 써야 할 이유가 없다는 지극히 수익성 관점에서 합리적이라고 판단되는 결론에 도달했기 때문이다.

개발자-안-뽑음_202312
개발자-안-뽑음_202312

개발자들이 쓰고 싶다고 하니까 끌려들어간 바보 사업가

처음 AWS라는 서비스를 쓰게 된 계기를 거슬러 올라가보면, 2018년 하반기에 본격적으로 개발자들을 뽑으면서 그들이 '회사의 기술 스택을 뭘로 할지 결정해야한다'는 논의가 나오던 중에 AWS가 남들이 다 쓰는거니까 쓰자는 주장에 따라가주기로 결정했던 시점까지 거슬러 올라갈 수 있다.

나는 그 때도 그랬고, 지금도 그렇고, 비싸서 & 서버 관리하기 힘들어서 안 쓰고 싶은데, 개발자를 더 뽑으려면 다들 쓰고 싶어하는 AWS를 써야 개발자들이 오고 싶어하는 회사가 된다고들 하더라.

돌이켜보면 그 때부터 똥고집을 부리면서 그냥 개발자 안 뽑고 나 혼자 다 한다고 밀고 나갔어야 했는데, 여느 스타트업 대표나 마찬가지로 나도 개발자를 많이 뽑아야 성장하는 스타트업이라고 봐 주는 외부의 시선에 종속된 바보였다.

그들이 AWS를 썼기 때문에 얼마나 효율적으로 개발이 진행됐는지, AWS를 안 쓰면서 개발을 진행했던 적이 없어서 모르겠다. 그들은 AWS 이외에도 멀티 서버 환경에서 Deploy가 쉽게 되도록 Bitbucket을 쓰고 싶다고 그러기도 했고, Kubernetes 계정을 열어달라고 하기도 했다.

돌이켜보면, 아무 부질이 없는 서비스들이었다. 그냥 그들이 '글로벌에서 핫하다는 서비스를 쓰는 경험을 할 수 있도록' 내 주머니를 털어줬을 뿐이다.

AWS_Stop_20240115
AWS_Stop_20240115

아마존을 글로벌 1등 기업으로 만들어준 것은 개발자들과 VC들이었다

내가 직접 서버를 셋팅해보고, 시스템을 이래저래 구축하면서 서버 스택의 각종 configuration을 바꾼지 3달이 지났는데, 예전에 Matlab으로 연구하다가 R로 플랫폼을 바꾸던 시절과 비슷한 불편함을 겪으며 학습 시간을 보낸 것 같다. 이젠 어지간한 건 굳이 Stack을 안 찾아보고 바로 해결할 수 있게 됐고, 문제가 생겨도 구글 검색 몇 번이면 금방 해결이 된다. 가끔 비상사태가 터져도 우리 회사 직원들이 날 믿고 있더라. 내가 흙빛 얼굴로 바뀌면서 DB 접속이 끊기는 바보 짓을 했다고 잠깐 접속이 안 된다고 그러니까, 잠깐 화장실 다녀오면 고쳐놨을거라고 생각들 하더라. 처음에 서버 직접 만들겠다고 할 때만 해도 저러다 개발자 다시 뽑거나 어디 비싼 돈 주고 외주 맡길 거라고 생각했던 거에 비하면 몇 달 사이에 엄청나게 신뢰를 쌓은 셈이다.

그 사이 나는 AWS와 완전히 결별했고, 아예 과거에 개발자들이 만들어 놓은 모든 시스템을 지우고 모든 것을 새로 만들었다. 각종 Cloud 관련 서비스들을 써서 글로벌 접속자들도 빠르게 늘어나는 중이고, 뭔가 조금씩 고칠 때마다 발생하는 문제들 때문에 다들 힘들어하지만, 또 며칠 안에 내가 그걸 뜯어 고치거나, 외부 서비스 중에 뭔가를 갖고와서 해결할 것이라는 믿음을 주는 회사로 성장했다.

아마 AWS가 글로벌 시장에서 개발자들에게 서버 셋팅과 관련된 스트레스를 해결해주고, 각종 프로그래밍 라이브러리를 제공해주면서 개발들을 '설득'할 수 있었던 것도, 내가 지난 몇 달간 겪은 검색 작업을 최소화해 줄 수 있었기 때문일 것이다. 개발자라고 하는 애들이 하는 업무가 구글 검색을 계속 해 보면서 누군가 만들어놓은 라이브러리들을 갖다 붙이는 작업인데, 그게 잘 안 돌아갈 때 어떤 방식으로건 질문과 대답이 이뤄지는 공간이 있어야 서비스를 게속 쓰려고 했을 것이기 때문이다.

그런데, 다른 한편으로 생각해보면 AWS, Azure, GCP 같은 플랫폼이 반드시 필요한 회사는 별로 없었을 것 같다. 대부분의 대기업들과 정부 기관은 이미 Java 기반의 상용 서비스가 돌아가고 있고, DB는 Oracle의 비싼 DB를 써서 그 분들이 DB 효율화를 다 해 준 상태로 돈다. 그 외 일부 분야에서 클라우드가 필요한 경우도 있었겠지만, 한국 기업들 중에 해외 서비스하는 경우가 과연 얼마나 됐을까?

AWS가 한국에서 실제로 개발자들을 설득할 수 있었던 부분은 'Machine Learning' 계열의 라이브러리들을 개발자들이 자기네 시스템에 갖다 붙여 쓸 수 있도록 AWS 전용 라이브러리를 만들어주는 정도가 거의 유일한 판매 포인트였을 것 같은데, 어떻게 마케팅을 잘해서 개발자들 사이에서 대세로 자리 잡게 됐다.

Pabii_Server_After_202312
Pabii_Server_After_202312

동접 3만, 5만, 10만을 버티는 서버 만들려면 엄청난 비용이 든다?

2020년 하반기의 어느 무렵으로 기억한다. 그 때 만든 커뮤니티 서비스에 1달 1백만에 가까운 방문자가 찍히던 시절인데, 가끔은 동접이 3천명이 넘어가면서 서버를 여러 대 붙이는 Scale out을 진행했었다. 몇 달 동안 이것저것 해 본 내가 며칠 전에 서버 컴퓨터 하나가 죽어서 새로 셋팅하는데 3시간 정도를 썼었고, Scale out을 위해서 두 대 이상의 서버의 File system에 Sync를 걸고, Load balancer 셋팅 조정하고, 문제 있는거 고치는 작업을 포함해서 6시간을 쓰질 않았는데, 그 때 백엔드 개발 한다던 4~5명의 팀이 대략 1달 남짓을 썼던 걸로 기억한다.

당시에 사달라고 했던 Switch도 사 줬고, 서버 한 대를 Load balancer로 셋팅하고, 나머지 서버들 간의 File system 공유도 못 했고, Load balancer 간에는 Cookie 셋팅 같은거 못하고 그냥 단순히 Round robin으로 트래픽 분산만 했었다. (기억이 틀렸다면 그 당시 개발자들에게 따로 사과할 생각이다.)

그 때 내가 들었던 이야기가, 동접 3만, 5만, 10만을 버티는 서버를 만들려면 서버 자원도 많이 늘려야하고, 지금보다 훨씬 더 많은 서버 컴퓨터들을 갖고와서 scale out을 진행해야 한다고 그랬다.

그러면서 결국은 서버 자꾸 사서 붙이려고 하지말고, AWS에서 t1.large 같은 서비스들을 쓰게 될 것 같으니까 미리부터 사서 연습하자고 그러더라.

Webserver1_TOP_20240115
Webserver1_TOP_20240115

이번에 단돈 100만원 남짓을 들여 36 코어, 384GB RAM을 붙인 서버를 하나 만들었는데, 당시에도 저걸 300만원 안 들여서 구매할 수 있었을 것이다.

그 서버 한 대가 동접 1만개 남짓을 감당하고 있는 상황이 위의 TOP 스크린 샷 정보 값이다. 왜 저렇게 작은 서버로 그렇게 많은 동접을 버틸 수 있게 됐냐면, 어지간한 콘텐츠는 Cloudflare의 APO가 캐시를 제공해주고, 우리 서버로 넘어와도 Varnish cache가 받쳐주고, 더 뒤로 들어와도 Nginx가 PHP를 안 돌리고 바로 html 파일을 쏴주는 캐시를 만들어놨기 떄문이다.

캐시에 없는 새로운 콘텐츠들만 서버가 돌아가니까 PHP가 할 일이 크게 줄어버렸다. 한 때는 최신 버전을 써야 좋은게 아닐까하고 강박증도 있었는데, 이젠 호환성 따지면서 일부러 PHP 버전도 8.3 대신에 8.1로 내려버렸다. 서버 1대의 성능을 최대한으로 뽑아내기 위해서 목숨을 걸거나, 고가의 서버를 사야할 필요도 느끼지 못하기 때문이다.

글로벌 서비스를 하고 있어도 상황은 크게 다르지 않다. 대부분의 접속자들은 로그인을 해서 댓글을 달고, 질문을 하는 경우가 거의 없다. 다들 단순히 콘텐츠만 보고 가는데, 굳이 유럽에, 미국에, 호주에 비싼 비용을 들여서 서버 운영을 할 게 아니라, Cloudflare가 캐시해서 갖고 있는 우리 회사 웹페이지들을 글로벌 200개 남짓이라는 자기네들 서버에서 나눠 서비스하도록 옵션만 구매하면 된다.

2020년에 그들이 날 더러 AWS로 고급 서버 구매해야된다고 입에 달고 있던 시절에도 이미 나와있던 서비스들인데, 그들은 왜 몰랐었을까? 나는 지난 몇 달간 이런 정보들을 어떻게 다 찾을 수 있었을까?

특별히 내가 뭔가 대단한 인간이 아니라, 나 역시 매우 느리게 이 정보를 따라간 바보였다. 그러니까 2020년에도 이미 상용화되어 있던 서비스를 2023년 말이나 되어서야 겨우 쓸 수 있었던 것이다.

그런데, 이게 자기네 밥줄과 직접 관련된 개발자들이 그렇게 AWS 라는 노래를 불렀던 것은 단순히 '바보'라는 자책이나 비판으로 끝날 일이 아니지 않나?

아마 그들의 주장대로 AWS의 각종 서비스를 썼으면 월 최소한 200~300만원의 서버 비용을 그 때부터 써 왔을 것이다. 나는 서버 1대에 100만원 남짓, 그 외에는 유지비용으로 매달 10만원 남짓을 더 쓰고 있는 중이다. 서비스 수준이 더 좋아졌으면 더 좋아졌지, 더 나빠졌다고 생각되지는 않는다.

그럼 AWS를 부자로 만들어준 사람들이 누구인지 너무 쉽게 답이 나오지 않나?

E-commerce로는 계속 돈을 못 벌어서 외부 투자금이 끊임없이 필요했던 아마존이 20년 사업 만에 처음으로 수익성을 냈던 사업이 AWS였다.

Picture

Member for

4 months
Real name
Keith Lee
Bio
Head of GIAI Korea
Professor of AI/Data Science @ SIAI