Krew Insight

[KREW INSIDE] 카카오 i 클라우드 개발실 인턴 성장기

chedda.choi 2023. 1. 19. 09:33

시작하며

안녕하세요, 카카오 i 클라우드 개발실 인턴 Sigee(최민석)Doollee(박윤정)입니다. 인턴으로 회사에 합류한지 얼마 되지 않은 것 같은데, 벌써 몇 달의 시간이 훌쩍 지났습니다. 짧은 시간 많은 경험을 할 수 있었던 카카오 i 클라우드 개발실의 소중한 에피소드를 기록하고 공유해보고자 합니다. 

[그림 1] 우리는 풋풋한 클라우드 개발실 인턴 (좌)Sigee (우)Doollee

한 1년 전쯤 카카오 i 클라우드에 대한 소식을 처음 들었을 때, "카카오도 클라우드 서비스를 하는구나"라는 막연한 생각을 했던 기억이 있습니다. 그때는 저희가 이 곳에서 같이 일하게 될 거라고는 생각도 못 했던 것 같아요. 

그리고 한 두 달 뒤, 카카오 i 클라우드 개발실 인턴 공고를 보게 되었습니다. 퍼블릭 클라우드 서비스를 개발하는 조직 내부에서 직접 일할 수 있다니! 개발자로서 이런 기회는 다시 없을 것 같다는 생각에 열정을 다해(?) 지원했고, 큰 기대감을 가지고 합류하게 되었습니다. 열정 가득한 두 주니어 개발자의 카카오 i 클라우드 인턴기 지금부터 시작합니다.

 

클라우드를 이해하기 위한 고군분투

회사에 막 입사한 뉴비 시절에는 처음 들어본 내부 용어들을 이해하는 것조차 고난이었습니다. 한 미팅에서 계속 반복되었던 'IKE'가 무엇인지 몰라 인터넷에 폭풍 검색했던 기억이 아직도 생생하네요. (IKE는 '카카오 i 클라우드 쿠버네티스 엔진'의 줄임말이었어요!) 이렇듯 다른 분들에게는 당연하지만, 저희에게는 아니었던 부분이 너무 많았습니다.  클라우드, 더 자세히는 카카오 i 클라우드를 이해하기 위해 많은 시간을 쏟으며 공부를 할 수밖에 없었죠.

 

클라우드 개발자의 길은 멀고 멀구나

인턴 초반에는 버디(입사 초기 도움을 받을 수 있는 크루가 지정되는데, 저희는 '버디'라고 해요)가 제안하신 과제들을 진행했습니다.

 

Sigee 저는 특히, Ceph라는 추상화 스토리지에 관해 공부하고 보고서를 작성했던 과제가 가장 기억에 남는데요. 추상화 스토리지(Software Definition Storage)라는 키워드와 Ceph의 개념을 공부하는 것도 재미있었지만, 추상화 스토리지가 등장하게 된 배경과 문제점까지 풀어내는 방법 또한 너무 흥미로웠습니다. Multi AZ에 대한 과제도 기억에 많이 남습니다. AZ란 가용영역(Availability Zone)을 의미하는데, AZ를 여러 개 사용한다는 것은 사용자 입장에서 클라우드 서비스의 가용성, 안정성을 높이기 위해 클라우드 아키텍처 설계에 반영하는 하나의 옵션이라는 생각을 했었습니다. 하지만 개발실에 와보니 Multi AZ가 주는 의미가 데이터센터, 네트워킹, 컴퓨팅 등 수 인프라와 많은 클라우드 리소스의 하모니가 필요한 일이었습니다. 클라우드 개발자의 입장에서 공부할 수 있는 사례가 너무 다채로와 퇴근하고도 늦게까지 관련 자료를 살펴보고 리서치했던 기억도 있습니다. 

 

Doollee 사실 클라우드를 공부하면서 가장 많이 들여다보게된 분야는 바로 네트워크였습니다. 클라우드라는 도메인에서는 어떤 서비스를 들여다보든 결국 네트워크와 연결된다는 것을 느꼈는데요. 라우팅 테이블이나 서브넷을 관리하거나 여러 개의 VPC를 연결하는 경우, 더 나아가 Multi AZ 스터디에서도 결국 중요한 지점이 네트워크로 연결되는 것을 발견할 수 있습니다. 클라우드에서 제공받은 리소스를 잘 활용하여 서비스 인프라를 구축하고 운영하는 방법은 사용자 측면의 재미있는 고민거리라고 생각합니다. 이러한 고민을 하기 위해서는 네트워크에 대한 배경지식이 역시나 중요하다는 생각이 들었습니다.

[그림 2] 현실.ver (좌)Doollee (우)Sigee

 

아마도 인턴이 가장 빠르게 성장할 수 있는 환경

Sigee 뭔가 스터디를 시작할 때 그 목표와 방향성을 잡는 게 주니어에게는 어려운 일일 텐데요. 저희에게 카카오 i 클라우드는 정말 완벽한 스터디 공간입니다. 적절한 과제를 제안하시는 버디, 다른 크루들의 고민과 그 고민을 풀어낸 흔적이 담긴 내부 Github, 여기에 학습한 내용을 직접 적용해볼 수 있는 클라우드 리소스라니! 클라우드실에서 가장 좋은 점이 공부할 토픽과 자료가 정말 방대하다는 것입니다🙌. 혼자 이론적으로만 공부하던 때보다 훨씬 더 재미있고 빠르게 성장할 수 있었습니다.

 

Doollee 사실 다른 동료 개발자분들께도 많이 배울 수 있었습니다. 제가 담당할 첫 핸즈온 시나리오 초안의 피드백을 부탁드리고자 해당 개발담당 크루분께 메시지를 드린 적이 있는데요. 원래 하는 일만으로도 바쁘셨을 텐데, 제가 작업한 내용을 꼼꼼히 봐주시고 코드에서 수정되어야 할 부분이나 기술적으로 모호한 표현도 명쾌하게 짚어주셨습니다. 모르는 인턴이 뜬금없이 피드백을 요청해 당혹스러우셨을 수도 있는데, 거리낌 없이 즉각적으로 상세한 피드백과 배경을 설명해주셨어요. (나중에 들은 이야기인데, 그 개발자분은 제가 인턴인 줄 몰랐다고 하시더라고요!) 
이런 경험은 제가 더 씩씩하게 인턴 생활을 하는 데 큰 힘이 되었습니다. 그 뒤론 더 거리낌없이 많은 서비스 개발자분들께 접촉(?)할 수 있었고, 정말 많이 배웠습니다. 기대했던 것 이상으로 인턴 생활은 주니어 개발자로서 얻을 수 있는 가치가 큰 것 같습니다.

 

우리들의 카카오 i 클라우드

카카오엔터프라이즈에 입사하면서 저희는 카카오 i 클라우드를 가장 먼저, 가장 많이 써본, 인턴이 되고 싶었습니다. 다양한 서비스를 직접 다뤄보고, 새롭게 배포되는 서비스를 가장 먼저 사용해보며 카카오 i 클라우드에 더 깊숙이 빠져들었어요. 카카오 i 클라우드 개발실의 인턴이라는 자부심으로, 저희가 경험한 카카오 i 클라우드를 소개해보려고 합니다.

 

카카오 i 클라우드 콘솔 보셨나요?

카카오 i 클라우드 서비스를 시작하면 가장 먼저 눈에 들어오는 부분은 바로 콘솔의 간편한 UI입니다.

[그림 3] 카카오 i 클라우드 콘솔 화면

이전에 타사 클라우드 서비스를 이용했을 때는 콘솔이 복잡해 서비스가 눈에 잘 들어오지 않았을뿐더러 링크는 얽혀 있어 아무리 타고 타고 들어가도 정보를 얻지 못한 채 제자리로 돌아온 경험이 있는데요. 반면 카카오 i 클라우드는 처음 접했음에도 불구하고 깔끔하고 직관적인 UI로 한눈에 서비스를 확인할 수 있었고, 구조화가 잘 되어있어 서비스를 사용함에 불편함이 없습니다.

 

각 서비스를 사용할 때의 UI도 간편, 명료합니다. 저는 DevOps Pipeline 서비스를 이용해 CI/CD 파이프라인을 구축했던 경험이 기억에 남는데요. 파이프라인 구성 요소를 설정할 때 직접 타이핑해야 하는 부분이 거의 없을뿐더러, 드래그 앤드 드롭으로 파이프라인을 생성해두면 계속 재사용할 수 있습니다. GUI 기반 파이프라인 스튜디오를 통해 버튼 클릭만으로 요소를 불러오고, 요소들을 화살표로 연결하기만 하면 CI/CD 파이프라인 구축이 완성됩니다!

[그림 4] 쉽고 빠른 CI/CD 파이프라인 구축

이뿐만 아니라 카카오 i 클라우드의 다양한 서비스를 사용해보면서 개발 크루들이 사용자 편의를 많이 고려해 서비스를 제작했다는 것을 느낄 수 있었습니다.

 

친절한 가이드를 만들어보자

저희가 현재 열심히 참여하고 있는 프로젝트는 카카오 i 클라우드의 시나리오 기반 핸즈온 튜토리얼입니다. 자세히는 사용자 관점에서 클라우드를 이용하는 여러 시나리오를 발굴하고, 검증하여 이를 문서화하는 작업입니다. 카카오 i 클라우드의 컴퓨팅 자원, 네트워킹 서비스, 관리형 데이터베이스 등을 사용하여 웹 서비스를 배포하는  클라우드 환경에서 기본이 되는 레퍼런스를 작업하기도 하고 GPU나 테라폼 등 특색있는 사용 예제를 탐색해보기도 합니다. 

 

Sigee 저희 나름의 애로사항은 시나리오를 한 단계씩 따라 하는 실습형 가이드로 만들기에는 문서가 너무 복잡해지고 길어진다는 것입니다. 인프라 세팅 같은 경우 꼭 필요한 예제라고 생각하지만 상세하게 모두 풀어서 정리하면 1시간 분량이 넘더라고요. 이런 경우에는 인프라 세팅에 대한 자동화 코드도 함께 제공하기 위해 테라폼 공부를 시작하게 되었습니다. 개인적으로 문서 작업보다는 코드 짤 때 마음이 더 편해서 이를 핑계로 글을 쓰다가 코드 IDE로 도망치기도 합니다.🤣

 

Doollee 저희가 작업한 핸즈온 가이드를 다른 크루분들과 함께 진행해 볼 기회도 있었습니다. 클라우드실 내 디자인 담당 크루분들이 내부에 공유된 핸즈온 가이드를 보시고는 비개발자도 해볼 수 있을지 문의를 주신건데요. 이 기회에 저희는 (쫄지 않고) 소규모의 핸즈온 트레이닝을 직접 진행했습니다! 디자이너 크루들은 실 사용자 입장에서 카카오 i 클라우드를 직접 경험해볼 수 있어 좋아하셨고, 저희는 잠재 사용자에게 핸즈온 가이드에 대한 피드백을 받을 수 있었기에 서로에게 유익한 시간이 되었어요. 또 적극적으로 참여해주신 크루분들 덕분에 애매한 표현이나 숨겨진 버그를 수정하며 가독성 좋고, 완성도 높은 문서로 업그레이드할 수 있었습니다. 이후에 2차, 3차 핸즈온 트레이닝이 예정되어 있다는 사실은 저희가 꽤 괜찮았다는 의미로 받아들여도 되겠죠? 🥰

[그림 5] 크루 대상의 핸즈온 교육

 

드디어 카카오 i 클라우드 기술문서, Grand Open!

드디어 저희가 공들여 기획하고 작성한 핸즈온 튜토리얼을 외부에도 알릴 수 있게 되었습니다. 바로 카카오 i 클라우드 기술문서의 오픈입니다. 카카오 i 클라우드 기술문서는 쉬운 시작 가이드에서 다양한 시나리오 기반의 핸즈온 튜토리얼까지 유용한 정보를 담았습니다. Gitbook기반의 개발자 친근한 기술문서 플랫폼을 이용하여 손쉽게 필요한 정보를 찾고, 실습에 적용할 수 있습니다.

[그림 6] 드디어, 카카오 i 클라우드 기술문서 오픈

저희가 그랬던 것처럼 많은 분이 다양한 핸즈온 튜토리얼을 통해 카카오 i 클라우드와 더 가까워질 수 있다고 확신합니다. 

 

마치며

지금까지 저희의 개발실 인턴기와 카카오 i 클라우드에 대해 소개해드렸습니다.

 

Doollee 직접 옆에서 지켜본 카카오 i 클라우드는 생각했던 것보다 훨씬 더 정교하고 빠르게 성장하고 있는 서비스입니다. 비록 저는 콘텍트 렌즈보다 뺑뺑이 안경이 일상인 사람이 되었지만(다 그러셔서 뭐 😆) 이런 카카오 i 클라우드팀에 함께 할 수 있어 정말 영광이었습니다. 카카오 i 클라우드의 더 높은 도약을 위해 더 열심히 하겠습니다🔥

 

Sigee 막연하게 클라우드 서비스를 생각했던 1년 전 저에게 이야기해주고 싶습니다. "민석아, 너 지금 잠이 오니…?" 카카오 i 클라우드 팀에서 인턴 생활을 하며 공부할 게 더 늘었습니다. 많이 배웠다, 조금 따라왔다 생각하면 저 멀리 계신 선배님들이 자꾸 언제 따라올래? 라며 재촉하는 이상한 조직.. 잘못한 사람이 된것 같아요..😅 진심으로 애정하는 카카오 i 클라우드팀 화이팅입니다. 

 

새로운 길에 도전하는 최고의 Krew들과 함께 해요!

클라우드 개발실 인턴 지원하기👀

Sigee (최민석) 

한참 클라우드 인프라에 관심이 많을 시기입니다.

Doollee (박윤정) 

클라우드 탐구에 대한 도전을 그만둘리 없습니다.