데보션영 3기 활동이 이제 얼마 남지 않았다..! 거의 마지막 미션인 전문가 인터뷰를 얼마 전에 진행했기에, 내용과 함께 느낀 점들을 정리해보려고 한다!

안승규 데보션 프로님

  • 한줄 소개 : Kubernetes Korea Group 커뮤니티 리더이며, CNCF Speaker Bureau 에 등록된 공식 CNCF Speaker 로 활동하고 있습니다. 사내 Kubernetes 전문가로 활동하면서 Kubernetes 기반의 플랫폼을 만드는 일을 하고 있습니다.
  • 데보션
  • 링크드인


🏃🏻 시작

Q1. 간단한 자기소개 부탁드립니다

  • SKT 컨테이너 솔루션 개발팀
  • 쿠버네티스로 플랫폼 솔루션을 개발
    • 내부에 있는 여러 서비스들을 조합해서 관리
  • 쿠버네티스 코리아 그룹 리더

Q2. 쿠버네티스 한국 그룹 리더로 계신데, 어떤 일들을 하고 계신지 궁금합니다

  • 쿠버네티스가 구글에서 공개한 오픈 소스
  • 쿠버네티스 프로젝트들을 확산하고 커뮤니티적으로 도와줌
  • 각 나라별 쿠버네티스 관련 행사 제작
  • 코 파트너를 지원

🧑🏻‍💻 개발 관련

Q3. 오픈 소스 프로젝트에 적극적으로 기여하고 기여하셨다고 들었는데, 오픈 소스에 참여하면서 얻은 가장 큰 개인적인 배움 또는 이후 경력에 도움 되었던 적이 있나요?

  • 실질적으로 코드에 기여 또는 문서를 해석
  • 커뮤니티를 만들어서 전세계적으로 확산될 수 있도록
  • 오픈소스에 참여했을 때의 장점은 관련된 실력자들을 많이 만날 수 있음
    • 또한 인적 자원으로도 연결이 되어 취업에도 도움이 많이 됨
  • 특정한 회사들을 이러한 커뮤니티를 장려하기도 함

Q4. 백엔드 개발에서 가장 중요하게 생각하시는게 무엇인지 궁금합니다

  • 10년 정도 개발을 하면서 느낀 것은, 버그가 없도록 하는 것이 가장 중요한 것 같음
  • 문제가 생겼을 때 최소화하기 위해서는 최대한 빠른 롤백을 해야 함
  • 카나리 방법을 사용
  • 우선적으로는 운영 단으로 넘어갔을 때 문제가 없도록 하는 것
    • 만약에 문제가 있더라도 이를 빨리 찾고 조치할 수 있는 능력

Q5. 쿠버네티스 클러스터에서 신입이 놓치기 쉬운 보안 위협은 무엇이라고 생각하시는지 궁금합니다.

  • 각 파드별로 밖에서 접속할 수 있도록 열어주는데, 터미널이 열리게 된다면 아무리 보안적으로 신경을 써도 문제가 되는 경우가 많음
  • 이전에는 코인 채굴이 심했는데, 크립토 채굴과 같은 것도 파드에 접속해서 TTI 쉘을 설치해서 권한도 획득하는 등이 가능함
    • 루트 권한을 뚫으면서까지
  • 가장 중요시 해야 하는 것은, 현재의 서비스는 외부에 노출이 되는 서비스이므로 루트 권한을 획득할 수 있는 부분에 대해서 조심해야 함

Q6. SRE, 플랫폼 엔지니어에게 가장 중요한 역량은 무엇이라고 생각하시는지 궁금합니다.

  • 배포된 사이트를 견고하게 만들 수 있느냐?
  • 요즘에는 용량도 많이 고민해보아야 함
    • 사용자를 얼마나 받고
    • 어느정도까지 감당할 수 있는지
  • 적은 용량을 투입했더라도, 대용량을 처리할 수 있는 방법을 찾기 위해 노력
  • 내 서비스를 어떻게 안정적으로 돌릴 것이냐를 최우선적으로 생각해야 함

Q7. Private Cloud를 구축한 경험이 많으신 것 같은데, 이 과정에서 어떤 문제점이 있었는지 그리고 어떻게 해결하셨는지 궁금합니다

  • 어려웠던 점
    • 인프라 측면에서 보면 cloud는 모든 부분을 다 알고 있어야 함
    • 하이퍼바이저, 버츄얼라이제이션 개념, 클라우드 컴퓨팅 등..
    • 이를 알기만 하는 것이 아니라, 핸들링 할 수 있는 능력도 있어야 함
    • 즉, 초반 허들이 너무 높음
  • 어려웠기에, 7월부터 시작해서 오픈을 그 다음 해 2월에 할 수 있었음
    • 허들이 높았고, 개발 시간이 짧았고, 잘 아는 개발자들도 얼마 없었음
  • 이를 해결하는데 오픈 소스가 많은 도움을 주었음
    • 기본적으로 있는 오픈 소스들을 활용하고, 필요한 부분들을 추가하는 식으로 해결함
    • 이때부터 오픈 소스 분야에 적극적으로 참여한 것 같음

Q8. 자신이 설계한 아키텍처를 팀원 등 타인에게 설득시킬 때 가장 중요하게 생각하시는 요소가 무엇인지 궁금합니다.

  • 결국 설득이 잘 안되는 경우도 상당히 많음
    • 엔지니어들의 고집도 있기 때문에 의견이 다른 경우가 많음
  • 지나고 보면 내 것이 아닌 다른 사람의 아키텍처가 나을 수도 있음
    • 100% 내가 옳다고 생각하고 밀고 나가는 것은 위험함
    • 만약 100% 내가 옳다고 생각 이 들어도, 이를 그냥 밀고 나가는 것이 아니라 말을 잘 해서 설득하는 것이 중요함

🎯 개발 외

Q9. 클라우드나 Kubernetes 분야에서 커리어를 시작하는 신입 개발자들에게 해주고 싶은 조언이나, 이 분야의 경력을 길게 이어가기 위한 팁이 있으신가요?

  • 초보자들에게 조언을 하자면, 무조건 선배가 있는 곳으로 가야함
    • 이를 잘 알고 실제로 쓰고 있는 곳
  • 처음에 투입된 후에 한 본을 만드는 데 걸린 시간이 3개월이었음
    • 이후로는 선배들이 만들어 둔 프로그램들을 조금씩 반영하면서 속도가 많이 빨라짐
  • 신입 때 아무것도 모르는 상태로 시작하는 것은 너무 어려움
  • 돈이 아니라 경력만 생각하는 거라면, 그 기술을 쓰고 있는 회사를 가야함
  • 그 이후에 커리어를 더욱 쌓으려면은, 결국에는 오픈소스(=커뮤니티)의 도움을 받아야 한다고 생각함
  • 기술을 습득하는 것도 중요하지만, 너무 연관성 없이 학습을 하게 되면 다 얕게만 배우게 됨
    • 그러니 연관성이 있는 기술들을 학습하고, 한 두 가지에 대해서는 깊게 학습하는 것이 좋음

Q9-1. 3개월 동안 한 화면을 하면서, 선배들한테 질문을 하셨나요?

  • 3개월 동안 선배들이 기다려준 것은, 도와주지 않는다는 조건이었음
  • 개발환경 세팅은 다 해줌
  • 완벽하게 했다고 생각했는데 버그가 5~6개 나왔음

Q9-2. 만약 질문을 할 수 있었다면, 어느 시점에 하는 게 좋았다고 생각하시나요?

  • 이틀 정도 고민해보다가 안 되면 물어보는 게 좋은 듯함
    • 너무 혼자 끙끙대는 것도 좋지 않은 것 같음
  • 요즘에는 개발을 하다가 하루 정도가 막히면, 우선 멈춤
    • 하루나 이틀이 지나고 나면 이상하게도 해결이 됨
    • 이전에는 밤새서 어떻게든 해결하려고 했음

Q10. 지금까지 수많은 기술을 학습해 오셨는데, 특히 시간이 부족한 상황에서 새로운 기술을 효과적으로 익히는 본인만의 방법이 있으시다면 소개해 주실 수 있나요?

  • 사실 효과적으로 할 수 있는 방법은 없는 것 같음
  • 내가 투자한 만큼의 결과가 나온다
  • 내가 지금 공부하고 있는 방법이 효과적이지 않다라고 생각하지 않는 것이 중요함
    • 하나를 공부하더라도, 점점 하다보면 모든 것이 연결됨을 알게 됨
  • 버전 관리 시스템만 하더라도, CVS → 서버전 → Git 순으로 빠르게 학습할 수 있었음
  • 내가 배우고 있는 것들 중에서 지금 당장 쓰이지 않는 것들도 많겠지만, 다음 기술을 배우기 위한 기초 지식이 되는 경우가 많음
    • 즉, 효과적으로 하는 것보다는 꾸준히 하는 것이 중요한 것 같음
  • 거의 한 7년 간은 밤 11시에 학습을 하고 했었음
    • 재미있어서 하셨음
    • 그정도 해 보면 내가 개발자를 해도 되겠다 라는 생각이 듦

Q11. 최근 관심사가 무엇인지 궁금합니다

  • 요즘에는 AI가 가장 큰 관심사임
  • 이전에는 AI에 대해서 일부를 도와주는 정도였는데, 지금은 깊게 관여해 프로젝를 진행 중임
  • 딥러닝까지는 깊게 공부를 하셨음 (엔지니어링 측면에서)

Q12. 개발자에게 커뮤니티란 어떤 존재라고 생각하시는지 궁금합니다

  • SKT 데보션 같은 커뮤니티는 거의 없음
    • 지식을 자유롭게 오픈하는 시스템
  • 본인의 네임밸류를 알리는 데에도 굉장히 중요함
    • 아무리 잘한다고 백날 말해도 잘하는 지는 모름
    • 글을 자주 쓰고 노출되면서 좋게 보일 수 있음
  • 실력에 비해 부풀려질 수도 있음
    • 하지만 그렇다 하더라도, 나를 잘 알릴 수 있는 좋은 방법이라고 생각함
  • 블로그에 기고 혹은 컨퍼런스 등에서 발표하는 것 등이 중요함
  • 개발자들에게 필요한 SNS

Q13. 개발자의 길을 걸어오시면서 가장 기억에 남는 선택 or 도전이 무엇이었는지 궁금합니다

  • Private Cloud를 만든 것
    • 회사 차원에서 TF팀을 지원 받았음
    • 팀에서 나름 안정적으로 자리를 잡은 상태였으나, 웹 백엔드를 넘어서 시스템 엔지니어 쪽을 해 보고 싶다라는 생각이 들어서 지원함
  • 7개월 동안 프로젝트를 진행했고, 이 때부터 오픈 소스를 적극 활용하게 됨
    • 거의 매일 밤새다시피 하심
  • 내가 하고 싶은 것이 있으면, 결과를 생각하는 것보다 한 번 도전해 보는 것
  • 회사 생활을 할 때, 회사에서 TF팀을 꾸리려고 한다면
    • 비록 내가 아는 기술이 아니더라도, 꼭 지원해 보는 것이 좋음
    • 그 프로젝트가 회사 또는 조직의 중심이 됨
    • 대우를 잘 받게 되고, 본인 또한 빠르게 신기술을 습득할 수 있음
    • 단, 내가 원하는 기술이어야 함

🎬 마무리

Q14. 데보션영에게 하고싶으신 말씀이 있으시다면 !?

  • 아래 두 가지 중, 어느 곳을 선택하는지에 따라 굉장히 길이 달라짐
    • 직장을 구해서 안정적으로 살고 싶은 건지?
    • 뛰어난 개발 능력을 계속 습득해서, 언젠가는 벤처를 획득해 나만의 프로그램을 가지고 싶은 건지?
      • 만약 나의 회사를 차리고 싶다..라는 생각이 있다면은, 정말로 열심히 해야 함
  • 요즘에는 대기업을 바로 가기는 너무 어려우니, 스타트업이나 중소기업 쪽을 먼저 갔다가 가는 것이 좋음
  • 내가 만약에 대기업 임원이 되고 싶다면, 무조건 미국에 있는 곳에 가서 석박사를 받아야 함
    • 이후 구글이나 메타와 같은 곳에서 10년 정도 일을 해야함

    • 17년 정도 지나고 40살 정도 되면 대기업 임원이 될 수 있을 것임…

    • 돌아간다면 무조건 이를 선택하겠음


💡 느낀 점

  1. 굉장히 친절하시고 최대한 많은 것들을 알려주시려는 인상을 받을 수 있었다.
  2. 특히 커뮤니티와 오픈소스 참여의 중요성에 대해서 많이 언급해주셨는데, 내가 생각하기에도 개발자들에게 이만큼 빠르게 성장할 수 있는 길은 없는 것 같다. 때문에 나도 계속해서 사람들을 많이 만나고 나를 알리려고 노력중이다.
  3. 쿠버네티스를 아직 사용해 본 적은 없기에 기술적으로 느낄 수 있는 부분들은 많이 없었다. 허나 커뮤니티적인 부분에서는 많이 느낄 수 있었는데, 전반적으로 실력 있는 사람들 안에 속하려고 노력해야 한다는 말씀들 위주였다.
  4. 이전에 있었던 에피소드를 재미있게 풀어주셔서 1시간 정도를 지루하지 않게 몰입해서 들을 수 있었던 것 같다. 또한 친절하면서도 현실적으로 말씀을 해주셔서 더욱 좋았던 것 같다.
  5. 실력 있는 분들과 대화를 하다 보면, 항상 최대한 도와주려고 마음을 쓰시는 것이 느껴진다. 나는 개발자들의 이러한 문화가 너무 좋다. 나도 꼭 누군가를 도울 수 있는 개발자이자 사람이 되고 싶다.
  6. 데보션영 활동을 통해 현업자 분들과 이렇게 교류할 수 있는 기회를 얻을 수 있음이 너무 귀중한 것 같다. 또한 데보션에 글도 자연스럽게 작성을 하며 나의 이름을 현업자분들께 알릴 수도 있다. 혹시나 누군가 이 글을 본다면 내년 초에 있을 데보션영 4기 지원을 긍정적으로 생각해 보면 좋을 것 같다!