만쥬의 개발일기

이번 포스팅에서는 데보션 영 3기 활동을 하며, 데보션 전문가 분과 인터뷰한 내용들에 대해 정리해보고자 합니다.

먼저 인터뷰에 응해주신 SKT 안승규 전문가님께 감사 인사 드립니다🙇🏻‍♂️

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

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

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

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

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

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

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

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

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

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

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

개인적으로 이 질문이 아키텍트 면접에서 종종 나오기 때문에 정말 궁금했습니다,, 🥹

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

플랫폼 엔지니어와 아키텍트를 지망하는 학부생으로서 많은 부분을 배우고 느꼈던 인터뷰였던 것 같습니다.

다시 한 번 인터뷰 함께 준비한 데보션 영 동기들과, 안승규 전문가님께 감사드립니다!

profile

만쥬의 개발일기

@KangManJoo

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!