Amazon Web Services 한국 블로그

AWS 블로깅 15주년!

제가 AWS 블로그에 첫 게시물(Welcome)을 작성한 것은 오늘부터 정확하게 15년 전이었습니다. 첫번째 글 이후로 이렇게 변화무쌍한 세상에서 경력으로 이어질 줄은 당시 전혀 몰랐습니다.

이 글에서는 본 블로그가 어떻게 시작되었는지에 대한 스토리를 전하고, 제가 가장 좋아하는 게시물이 무엇인지 그리고 실제 글을 작성하고 블로깅하는 방식에 대해 공유하기에는 지금이 좋은 시점인 것 같습니다.

배경 스토리
1999년경 저는 Microsoft의 Visual Basic 팀에 소속되어 있었습니다. XML은 완전히 새로운 기술이었고 Dave Winer는 막 RSS를 언급하기 시작할 때였습니다. VB6, XML 및 RSS의 교차에 흥미를 느낀 저는 사이드 프로젝트로 Headline Viewer라는 작은 앱을 제작했습니다.

저는 다운로드 가능하도록 앱을 게시했고, 사람들은 앱을 마음에 들어했으며, 콘텐츠 소유자들은 앱에 포함할 RSS 피드를 저에게 보내기 시작했습니다. 피드 목록은 큰 인기를 얻었고, 사람들은 앱을 원하는 만큼 피드 목록을 원하게 되었습니다. 저 또한 이 시기에 초기 블로그를 서버 고장으로 유실한 후 저의 세 번째 개인 블로그를 시작했습니다.

Aaron Swartz를 비롯한 다른 사람들의 격려에 힘입어 저는 Headline Viewer를 잠시 보류하고 2001년 후반부터 Syndic8를 시작하여 피드를 수집, 정리 및 공유하기 시작했습니다. 저는 개인 시간에 90,000줄에 가까운 PHP를 작성했으며 이 모두는 50개의 테이블이 포함된 매우 복잡한 MySQL 데이터베이스와 관련된 것이었습니다.

저는 호스팅, 규모 조정, 보안 및 데이터베이스 관리에 대해 많은 것을 배울 수 있었습니다. 또한 이 사이트에는 XML-RPC 웹 서비스 인터페이스가 구축되어 광범위한 쿼리 및 업데이트 작업을 지원했습니다. 피드 컬렉션은 첫 두 해 동안 거의 250,000개 가까이로 증가했습니다.

당시에는 몰랐지만 XML, RSS, 블로깅 및 웹 서비스에 대한 저의 초기 경험은 Amazon에 입사 신청을 했을 때 저를 차별화하는 스킬이 되어주었습니다. 여기서 볼 수 있듯이 때로는 취미와 개인적 관심이 장차 경력을 좌우하는 자산이자 차별화 요소가 되기도 합니다.

전자상거래 웹 서비스를 만나다!
이 모든 것이 진행되는 한편, 저는 2000년에 Microsoft를 나와 당시에는 새로운 영역이었던 웹 서비스에 대한 컨설팅 일을 하고 있었습니다. 당시 사용되던 대부분의 웹 서비스는 주가 지수, 일기 예보, 환율 등 귀여운 데모 수준을 벗어나지 못했습니다. 기술자들은 인터넷을 가로지르는 함수 호출에 감탄했지만 투자자들은 큰 반응을 보이지 않은 채 지나갔습니다.

2002년 중반, 저는 Amazon 최초의 웹 서비스(현재 제품 광고 API라고 불리는 서비스)에 대해 알게 되었습니다. 제 시각에는 이것이 최초의 유용한 웹 서비스였습니다. 이 웹 서비스는 로컬 수준에서 구현할 수 없는 특별한 기능을 선사했으며 공급자와 소비자 모두에게 가치를 제공해 주었습니다.

저는 SDK를 다운로드하고(나중에는 오른쪽에 표시된 미니 CD 형식으로 사본이 제공되었습니다) 개발자에게 피드백을 제공했습니다. 그리고 얼마 되지 않아 저는 Amazon 본사에서 서비스에 대해 일찍 관심을 가졌던 다른 4~5명과 함께 일일 특별 이벤트에 참석하고 있었습니다. 몇몇 팀은 자신들의 계획을 우리와 공유하면서 우리의 솔직한 의견을 물어보았습니다.

발표자 중 한 명이 “우리가 첫 번째 서비스를 출시하자 개발자들이 이를 찾아내어 24시간 내에 앱을 구축 및 공유했습니다. 우리는 우리 비즈니스의 다른 부분에도 웹 서비스 인터페이스를 적용할 수 있는지 탐색하려고 합니다.”라고 말했습니다.

이것이 저의 전구에 불이 들어오는 순간이었습니다. Amazon.com을 개발자가 액세스할 수 있게 되는 것입니다. 저는 Sarah Bryar(이벤트에 초대한 당사자)에게 이 작업의 일원이 되고 싶다고 말했습니다. 그녀는 가능하다고 대답했고 몇 주가 지난 2002년 여름, 저는 Larry Hughes에게 보고하는 Amazon Associates 팀의 개발 관리자 중 한 명으로 일하게 되었습니다.

Associates 프로그램의 각 구성원에 대한 일일 보고서를 작성하는 팀 운영 업무 외에도 Larry는 저에게 초기 웹 서비스 작업에 “협조”할 수 있는 자유를 주었습니다. 저는 샘플 프로그램을 작성하고, 포럼에 협력하고 코드 베이스에 기여하기까지 했습니다. 저는 정상적인 Amazon 면접 과정을 거쳤으며 화이트보드에 일부 문자열 처리 코드를 적어야 했습니다.

아마존 웹 서비스 에반젤리스트
아마존에서 일을 시작한 지 몇 개월이 지난 후, Sarah와 Rob Frederick이 저에게 와서 컨퍼런스에서 발표하려는 사람이 없으니 저보다 발표해 달라고 말했습니다. 저는 기꺼이 하겠다고 했으며 몇 개울 후 Sarah는 저에게 웹 서비스 에반젤리스트 직책을 제안했습니다. 이 직책은 제 스킬과 잘 매칭이 되었으며 저는 바로 일자리를 수락하고, 개발자, 회사, 학교와 이벤트를 예약하거나 제 의견을 듣기 원하는 이벤트를 예약하기 시작했습니다.

2003년 후반에는 Jeff Bezos의 집에서 진행된 브레인스토밍 세션에 참여하기도 했습니다. Jeff Bezos, Andy Jassy, Al Vermeulen, 저 그리고 다른 몇 명(메모를 더 잘 했어야…)은 하루 종일 다양한 아이디어를 만들어 냈으며, 이러한 아이디어는 향후 EC2, S3, RDS 등으로 진화했습니다. 저는 이 세션이 How AWS Came to Be에서 언급되었던 세션이라고 생각하지만, 100% 확실하지는 않습니다.

이 목록을 시작으로 Andy는 AWS 비즈니스를 정의하는 문서를 작성하기 시작했습니다. 저는 운 좋게도 Andy로부터 방 2개 거리의 가까운 사무실에서 근무했기 때문에 그의 문서를 검토하고 의견을 제시하는 데 많은 시간을 보냈습니다(AWS에서 문서를 사용하여 비즈니스를 정의하고 결정을 지원하는 방법은 How Jeff Bezos Turned Narrative into Amazon’s Competitive Advantage를 참조하십시오). 저 또한 개발자 홍보 팀을 위한 계획을 정의하는 일부 문서를 자체적으로 제작됩니다.

블로그의 필요성
Andy의 첫 내러티브를 읽으면서 우리가 뭔가 복잡하고 중대한 것을 만들게 될 것이라는 느낌을 받았습니다.

저의 개발자 홍보 플랜에는 블로그가 포함되었고 저는 Andy 그리고 Drew Herdener와의 미팅에서 구체적인 내용을 논의하는 데 많은 시간을 할애했습니다. 제 기억으로는 당시 이 블로그가 어떤 형태를 갖출지 그리고 콘텐츠 생성 및 승인의 관점에서 어떻게 구현될지를 정확하게 정의하는 것이 매우 어려운 일이었습니다.

Amazon에서 하는 모든 일이 그렇듯이, 제가 제공하는 모든 답변은 Andy와 Drew로부터 더 많은 질문을 낳았습니다! 우리는 결국 톤과 리뷰에 대한 몇 가지 기본 규칙을 합의하였고 저는 빨리 시작하기 위해 몸이 근질거리는 상태였습니다.

저는 두 번째 Foo Camp에 Jeff Bezos의 기술 자문으로 그와 동행하는 행운을 얻었습니다. 많은 사람들을 만났지만 그 중에 저는 Six ApartBenMena Trott을 만날 기회가 있었으며 그들은 그들의 블로깅 도구인 TypePad에 1,000일 동안 무료로 액세스할 수 있는 쿠폰을 저에게 주었습니다.

개인 블로그 시작
그 쿠폰을 가지고 시애틀로 돌아온 저는 AWS 블로그(나중에 AWS 뉴스 블로그로 변경)를 만들었으며 그 해 후반기에 첫 두 개의 게시물(WelcomeBrowse Node API)을 작성했습니다. 이 최초의 게시물 두 개가 제 경력을 완전히 바꾸어 놓을 줄은 전혀 예상하지 못했습니다.

저는 초기에 “톤”을 조정하는 데 조금 어려움이 있었고 제가 회사의 입장에서 글을 쓰는지 아니면 그룹, 서비스 또는 저 자신의 입장에서 글을 쓰는지 결정할 수 없습니다. 몇 번의 실험을 거친 끝에 저는 개인적인 1인칭 스타일이 가장 좋다는 것을 확인하고 그렇게 하기로 결정했습니다.

초기에는 특별한 프로세스나 블로그 팀이 없었습니다. 흥미로운 주제가 제 수신함에 들어오면 저는 그냥 제가 적절하다고 생각되는 방식으로 그 주제에 대해 글을 적었습니다. 저는 주제와 단어 선택에 있어 상당한 자율권이 있었으며 저는 최선을 대해 정확하고 강력하게 메시지를 전달하는 동시에, Amazon 홍보 팀 직원들의 업무를 가중시킬 수 있는 논란적 주제는 가급적 다루지 않았습니다.

AWS 클라우드 서비스 출시
Andy는 팀을 구축하기 시작했고, 저는 첫 출시에 대한 준비를 시작했습니다. 우리는 방대한 클라우드 서비스 제품군의 출시로 인해 세상이 바뀔 것이라는 극적인 수사를 사용할 수도 있었습니다. 그러나 그것은 우리 방식이 아니었기에 사실에 기반한 단계식 안내를 통해 메시지를 전달하는 데 만족했습니다.

Business Week가 우리의 노력을 Jeff Bezo의 위험한 베팅이라고 묘사한 것은 우리에게 조금 당황스럽게 다가왔지만 우리는 시작 단계이므로 노력을 인정 받기가 어렵고 잘못 이해될 수도 있다는 점을 인정했습니다.

다음은 제가 최초의 AWS 서비스와 기능에 대해 제가 적었던 몇 가지 게시물입니다.

SQSAmazon SQS(Simple Queue Service)의 첫 베타에 대한 글을 미처 적지 못했는데 이 베타는 Queue Scratchpad라는 게시물에 처음 언급되어 있습니다. 이 게시물은 Amazon에 합류하기 전부터 오랫동안 Amazon의 팬이었던 Elena Dykhno가 구축한 사이트인 AWS Zone을 언급하고 있습니다. 저는 Simple Queue Service Beta 2에 대한 게시물은 작성한 바 있습니다. 이 시점에서 저는 많은 사람들이 왜 서점에서 메시지 대기열을 팔려고 하는지 궁금해 하리라 생각합니다. 그러나 우리는 우리의 계획을 너무 자세히 설명하거나 전달할 필요를 느끼지 못했습니다.

S3 – 저는 항공편을 놓치지 않으려고 뛰어가는 동안 첫 번째 Amazon S3 게시물을 작성했습니다. 그래도 서비스 개요, 주요 용어 정의, 요금 및 개발자에게 멋진 애플리케이션을 제작하도록 초대하는 등 중요한 기본 사항은 모두 다루었습니다.

EC2 – EC2는 “출시 직전” 상태로 있은 지 꽤 되었기 때문에 저는 출시가 상당히 중요한 이벤트라는 것을 알고 있었습니다. 저는 이미 Sometimes You Need Just a Little…에서 확장 가능한 온디맨드 웹 서비스라는 주제를 언급한 바 있으며 저는 EC2의 실제 내용에 대한 글을 적을 준비가 완전히 되어 있었습니다. 그러나 오래 전부터 계획 중이던 가족 휴가가 출시 일정과 겹치는 바람에 저는 멕시코 카보산루카스의 수영장 옆에서 일부 Amazon EC2 Beta 게시물을 작성했습니다! 그 게시물은 거의 완벽했지만 “AMI”가 일부 전문가가 주장하듯이 철자를 발음하지 않고 단어 전체를 발음해야 한다는 점을 명확하게 했으면 좋았을 것입니다.

EBS – 처음에는 EC2 인스턴스의 모든 스토리지가 임시 스토리지였기 때문에 인스턴스를 종료하면 스토리지도 모두 유실되었습니다. 때문에 EBS의 출시(Amazon EBS (Elastic Block Store) – Bring Us Your Data)는 EC2의 사용을 대폭 간소화해주었다고 말할 수 있겠습니다.

이 게시물들은 초기에 제가 작성했던 것으로 향후 블로그의 기초를 다져주었던 게시물입니다. 저는 아직도 이 게시물들을 읽으면 클라우드 초기의 날들이 생각나 기분이 좋아집니다.

현재 AWS 블로그 현황
여러 해가 지나면서 제 시간 중 블로깅에 할당된 시간의 비율도 점차 커져서 이제는 약 80%가 되었습니다. 저는 남은 시간에 약간의 대중 연설을 하고, 고객을 만나는 등 이 놀랍고 성장을 멈추지 않는 분야와 관련된 일들을 하고 있습니다. 저는 고객의 소리에 귀를 기울이고 최선을 다해 고객의 요구를 충족하는 서비스로 응답하기 위해 정말 열심히 일하고 있는 AWS 서비스 팀과 함께 일할 수 있는 기회에 아주 만족하고 있습니다.

우리는 이제 강력한 팀을 구축했을 뿐 아니라 새로운 블로그 게시물을 위한 강력한 프로덕션 프로세스도 구축했습니다. 팀은 PRFAQ(보도 자료 + FAQ, Amazon 문서 유형 중 하나)를 첨부한 티켓을 생성하고 블로거에게 해당 서비스에 대한 조기 내부 액세스를 제공하여 게시물을 요청합니다. 우리는 자료를 검토하고, 까다로운 질문을 던지고, 서비스를 사용해 보면서 게시물 초안을 작성합니다. 우리는 초안을 내부적으로 공유하고, 피드백을 읽고 이에 응답한 후 게시 승인을 기다립니다.

현재 게시물 작성 및 운영 방식
그 동안 3,100개의 게시물(계속 추가 예정)을 작성한 바 있는 저는 게시물을 계획하고 작성할 때 다음과 같은 부분에 초점을 맞춥니다.

배우고 호기심을 가져라 – 이것은 Amazon 리더십 원칙 중 하나입니다. 내가 말하고자 하는 내용이 무엇인지 이해하면 글쓰기가 쉬워집니다. 저는 각각의 PRFAQ를 검토하고 까다로운 질문을 던질 뿐 아니라 당연해 보이는 부분에 제가 동감하지 않을 수도 있다는 점을 주저 없이 밝힙니다. 때때로 저는 제가 이해하고 흡수할 수 있는 절대 한계에 도달하기도 하지만 결코 시도를 멈추지는 않습니다.

정확도 – 저는 절대 진실을 가리지 않으며, 제 탈출구를 확보하기 위해 여러 방식으로 이해될 수 있는 애매모호한 단어를 절대 사용하지 않습니다. 인터넷은 궁극적인 팩트체크 도구이며 저는 잘못된 정보를 제공하고 싶지 않습니다. 제가 틀린 경우에는 기꺼이 이를 인정하고 문제를 수정합니다.

가독성 – 저는 많은 단어를 알고 있지만 모든 단어를 사용해야 하는 필요성은 느끼지 않습니다. 저는 길고 모호한 단어보다는 가장 적절한 단어를 사용하는 것을 선호합니다. 또한 저는 약어와 기업 전문 용어의 선택에 주의하고 있으며, 테라바이트와 테비바이트를 혼동하지 않기 위해 노력합니다.

검소하라 – 이것도 Amazon 리더십 원칙 중 하나로서, 저는 이 원칙을 흥미로운 방식으로 사용합니다. 저는 여러분 모두 바쁘며 불필요한 단어나 치장된 어휘를 원하지 않는다는 것을 알고 있습니다. 따라서 저는 대부분의 게시물을 700~800 단어 수준으로 유지하려고 노력합니다(이 게시물은 예외입니다). 저는 차라리 서비스를 사용하거나 뭔가 유용한 일에 시간을 소비하고 싶습니다.

개인적 생각
마무리하기 전에 이 놀라운 여정에 대한 제 생각을 한두 가지 전하고자 합니다.

글쓰기 – 저는 글 쓰는 것을 좋아하지만 절대로 천부적인 글재주를 가지고 있지는 않습니다. 실제로, 고등학생 시절 제 영어 선생님은 가장 낮은 합격 점수를 저에게 주면서 글만 더 잘 쓴다면 제 미래가 더 나아질 것이라고 말씀하셨습니다. 저는 정식 영어를 익히는 시도를 중지하고 대신 천재 작가들이 어떻게 단어와 구두점을 사용하는지 관찰하기 시작했습니다. 이 방식과 수 십년에 걸친 연습이 결국 효과를 보였습니다.

진로 – 블로깅과 에반젤리즘은 제 스킬과 관심 분야에 잘 매칭이 되었지만 제가 이것을 깨달은 것은 40세가 지나서였습니다. 자신이 누구인지 그리고 무엇을 하고 싶은지 알아내는 데에는 20대나 30대, 또는 40대라도 상관 없습니다. 이 점을 명심하고 경력을 개발하는 동안 새로운 방향과 기회에 대해 유연하고 개방적인 자세를 가지시기 바랍니다.

도움을 주신 분들 – 여러 해에 걸쳐 제가 풀타임 블로거로 천천히 성장하는 동안 Andy Jassy, Prashant Sridharan, Steve Rabuchin, Ariel Kelman을 비롯한 많은 매니저분들이 많은 조언과 전폭적인 지지를 제공해 주었습니다. 저는 수년에 걸쳐 제 글의 목소리를 다듬고 블로깅 스킬을 쌓는 동안 이들이 저에게 자율권을 주었던 것에 대해서 진심으로 감사하고 있습니다! Ana VisneskiRobin Park는 저와 다른 블로거를 지원하는 블로깅 팀을 구축하는 데 놀라운 능력을 보여주었습니다.

15년간 감사합니다!
마지막으로 15년 동안 시간과 관심 그리고 격려의 말씀을 제공해 주신 독자 여러분에게 감사 드립니다. 정말 흥미로운 기술을 여러분과 공유하는 삶을 살게 된 것을 영광으로 생각합니다!

Jeff;