매주 금요일마다 한개씩 오픈한다고 합니다

이번주는 뭐 별 내용이 없습니다. 기안84 나와서 '네이버 좋네 밥도 주고 사내 식당도 있고' 뭐 이런 동영상이 있는데 뭐 붙어야 의미 있는 거겠죠.

 

맨 밑 페이지에 Q&A가 있는데 이건 좀 쓸만해보여서 갖고왔습니다

근데 질문이 13264개인데 딱 5개만 답변하는건 .. 귀찮은건지 아니면 그만큼 중요한 질문이라는건지..

 


Q. 개발자의 지원서, 어떻게 작성하는 것이 좋을까요?

화려한 문체나 거창한 커리어보다는, 개발에 대한 나만의 열정과 노력들을 보여주시는 것이 중요합니다.  입사 후 빠르게 배우며 성장해 갈 기회가 무궁무진하기 때문에 개발을 정말 좋아하는지 보곤 합니다. 

그런 면에서 이수한 컴퓨터 공학 관련 과목, 기술적 문제를 해결한 경험, 에너지를 집중해 끝까지 파고들었던 경험, 개발자로서 개선해보고 싶은 네이버의 서비스 등도 미리 생각해 두시면 도움이 될 것입니다.

포기하지 않고 끝까지 몰입해 본 경험, 세상의 불편을 개발로 풀고자 시도했던 경험 등 개발자로서의 성장 의지를 보여줄 수 있는 본인만의 스토리가 있다면  잘 녹여서 작성해주세요.

글로 표현하기 어렵다면 코드로 보여주셔도 됩니다. ​모든 네이버 개발 직군의 지원서는 현직 개발자가 검토하거든요 :)

 

(면접관 코멘트)

내가 무엇을 할 수 있는지가 명확히 드러나는 지원서를 선호합니다.

어떤 프로젝트를 했었고, 그 프로젝트에서 어떤 역할을 했고, 내가 만든 산출물이 어떤 것이고, 기술적으로 어떤 고민을 했었는지 등이 나와 있는 지원서의 경우 더 자세히 보게 됩니다.

지원서에 개인 GITHUB URL을 작성한 지원자의 경우, 꼭 들어가서 봅니다.

소스를 통해 지원자의 개발 역량을 파악할 수 있을 뿐더러, GITHUB을 운영하고 공유할 정도라면 어느 정도 수준이 있는 개발자일 것이라는 기대를 하게 됩니다.

ㅇㅇㅇ 리더 / NAVER Personal UGC Dev

 

GITHUB은 여러분이 생각하는 것보다 많은 정보를 제공합니다.

GITHUB에 소스를 지속적으로 업로드하고 관리하고 공유하는 것이 가장 중요합니다.

내용이 구체적이면 구체적일수록 이해하기 쉽겠죠.

지원서에는 '잘했다, 못했다, 성공했다, 1등 받았다'와 같은 '결과'보다는 '무엇을 했는지' 강조해 주세요. 학과 공부에서 배운 것 뿐만 아니라 무언가를 새로 알게 된 경험에 관한 이야기도 좋습니다.

협업에 대해서 이야기하고 싶다면 갈등, 조정, 협의, 합의 등에 이르게 된 과정을 설명해 주세요.

협업의 출발은 상대에 대한 이해이고, 배려이니까요.

ㅇㅇㅇ 책임리더 / NAVER Maps 개발


Q. 개발자로서 꼭 읽어야 할 책이 있다면 추천 부탁드립니다

(신입 코멘트)

본인이 주로 쓰는 언어의 Effective 시리즈를 추천합니다. 한 언어를 깊게 공부한다는 것이 어떤 것인지 알려주는 책이라고 생각해요.

ㅇㅇㅇ / WORKS MOBILE Business Dev

 

클린 코드를 추천합니다. 코드를 다른 사람이 보기 쉽도록 가독성 있게, 의미 있는 이름으로 변수를 작명하는 것은 정말 쉽지 않은 일이고, 앞으로 저도 계속 발전시켜야 할 부분이라고 생각합니다.

코드를 클린하게 작성하는 것에 대해서 다루고 있는 이 책을 한 번쯤은 읽어보시면 좋을 것 같습니다.

ㅇㅇㅇ / NAVER 예약&주문개발1

 

대학교 교과서를 다시 읽어보는 것을 추천합니다. 저는 특히 자료구조 교과서가 가장 큰 도움이 되었는데, 운영체제 등 기초 지식을 다지고, 코딩 테스트를 연습하는 데 도움이 되었습니다.

ㅇㅇㅇ / NAVER Intelligent Data

 

(면접관 코멘트)

Pro Git. 신입사원이 현업에 갔을 때 Git을 잘 다루지 못해 어려움을 겪는 경우가 종종 있어, Git 관련 서적 한 권 추천합니다.

ㅇㅇㅇ 리더 / NAVER Whale Mobile

 

대학교에서 전산 기초 과목 학습할 때 읽은 책들을 잘 보관하시고 다시 읽어보는 것을 추천합니다. 운영체제, 데이터베이스, 네트워크, 자료구조, 프로그래밍 언어, 알고리즘 등 기초과목

ㅇㅇㅇ 책임리더 / NAVER Glace 개발

 

책은 아니지만 머신러닝/딥러닝에 관심 있는 분들에게 도움이 될 만한 온라인 강좌 몇 가지 추천합니다.

Machine Learning 강좌 (Andrew NG)

여러 강좌 리스트 중 첫 번째, 두 번째 강좌를 신청해 들어보세요

모두를 위한 딥러닝 강좌 시즌 1 (Sung Kim)

유용한 내용이 많으니 관심 있는 분들은 한번 쭉 들어보는 것을 추천합니다.


Q. 신입 입문 교육 때 어떤 내용을 주로 배우는지, 배운 내용이 실무 적응하는 데에 어느 정도 도움이 되었는지 궁금합니다.

(신입 코멘트)

신입사원 입문 교육은 크게 투 트랙으로 나뉘어서 진행되었어요. 첫 번째 트랙은 회사에 대해 알아가는 시간으로, 계열사 소개, 네이버에서 일하는 방식, 사내 보안, 글쓰기 방법론 등을 배웠어요. 두 번째 트랙은 Tech 교육으로, 크게 Android, iOS, Back-End, Front-End 분야 중 하나를 선택해서 진행했고, AI, Git을 다루는 방법은 공통으로 교육받았습니다. 저는 이번에 교육 과정 때 Android에 대해 처음 배웠는데요, 기초 지식 위주로 진행되어 도움이 많이 되었습니다.

ㅇㅇㅇ / NAVER WEBTOON KR Tech

 

신입 입문 교육 때 받은 사내 인프라 관련 교육이 도움이 많이 됐습니다.

NAVER 내에는 개발에 필요한 많은 인프라와 서비스들이 있는데요, 종류가 정말 많아서 따로 교육을 받지 않았다면 어떤 역할을 하는 인프라인지, 어떤 것을 적용해야 할지, 어떻게 사용해야 할지 몰라 정말 막막했을 것 같아요.

ㅇㅇㅇ / NAVER 예약&주문개발1

 

신입 입문 교육이 끝날 때쯤 부트캠프 프로젝트를 진행했어요.

신입 동기들과 함께 과제를 수행하였는데, 아무래도 동기신입 동기들과 함께 과제를 수행하였는데, 아무래도 동기들 모두 체계적으로 협업하며 작업해 본 경험이 없었기 때문에 많은 시행착오를 겪었어요. 어떻게 코드를 작성해야 동료가 작업하기 편할까, 어떻게 해야 코드를 잘 관리할 수 있을까, 어떻게 해야 보다 효율적으로 프로그램을 만들 수 있을까 등 대학생 때에는 주의 깊게 생각하지 않았던 것들을 하나하나 고려해 가며 작업했던 기억이 납니다. 무척 새롭고 소중한 경험이었어요.


Q. 6개월 동안 NAVER에서 신입 개발자로 일하면서 기억에 남는 독특한, 혹은 힘들었던 경험이 있었다면 공유해 주세요.

(신입 코멘트)

입사 후 컬럼 수가 천 개 이상이고, 레코드 수가 천만 개 이상인 데이터를 처리하는 개발을 맡은 적이 있는데, 그게 가장 기억에 남네요. 입사하기 전엔 천만 명 이상의 사용자를 가정하고 개발해본 적은 없었거든요. 사용자가 방대하다 보니 데이터의 양도 방대하더라고요. 네이버이기에 할 수 있었던 경험이었다고 생각합니다.

ㅇㅇㅇ / NAVER FINANCIAL 수신&여신 개발

 

코드 리뷰가 가장 기억에 남는데요, 하나의 코드에 코멘트가 100개 넘게 달렸던 기억이 있어요.

선배님들이 귀찮은 기색 없이 적극적으로 리뷰를 해주셨고, 제가 고려하지 못했던 부분을 다른 관점에서 생각하고 제안해 주셔서 코멘트를 받을 때마다 새로웠습니다. 최종적으로 approve 받았을 때의 희열이 아직도 생생합니다.

ㅇㅇㅇ / NAVER CONOMI 앱개발

 

제가 개발하는 서비스에 처음으로 배포를 했던 일이 가장 기억에 남아요.

간단한 팝업을 띄우는 작업을 했는데, 평소에 자주 사용하던 서비스에서 제가 개발한 팝업이 보이는 게 굉장히 신기했어요.

ㅇㅇㅇ / NAVER FINANCIAL 핀테크개발


Q. 네이버가 계속 강조하는 기본기, 그 기본기가 도대체 무엇인가요?

* Class 3에서 기본기에 관한 내용이 이어집니다.

면접관 코멘트

기술적인 관점의 설명을 위해 자동차로 예를 들자면, 아래 두 가지 유형의 운전자가 있다고 가정합니다.

A: 자동차에 관심이 많아서 자동차의 원리와 각 부품이 어떤 역할을 하는지 이 기능은 왜 들어간 것인지를 이해하고 있다. 교체 주기에 맞추어 소모품을 미리 교체하고 평소에 예방 정비를 꾸준히 받는다.

B: 그냥 운전만 할 줄 안다. 소모품 교체 주기도 잘 모르고, 고장이 나야 카센터에 간다.

10년 후에 어떤 운전자의 차량이 더 컨디션이 좋을지 상상해보면 당연히 A 운전자의 차량일 것이라고 예상할 수 있습니다. 비슷한 예시로 야구 선수도 기초 체력을 강조하는 것이 있겠네요.

‘기본기’란 그런 것이 아닐까 싶습니다. 우리가 하는 일에 대해 관심을 가지고, 업무를 하기 위해 필요한 것이 무엇인지 이해하며 꾸준히 노력하는 것이요. 같은 Web Application을 개발하는 개발자라도 OS의 기본 원리를 이해하고 개발하는 Web Application과 이해하지 못하고 개발한 Web Application은 평소에는 큰 차이를 느끼지 못 할 수 있지만,
큰 부하 상황이나 예외적인 상황에서 서로 다른 결과를 보이니까요.

학부 때 공부했던 OS, 네트워크, 알고리즘, 자료 구조 등을 착실하게 내 것으로 만들어야 더 좋은 코드를 만들 수 있고,
단순히 암기가 아니라 원리를 이해해야 실무에서 응용을 할 수 있다고 생각합니다.

ㅇㅇㅇ 리더 / NAVER Personal UGC Dev

 

작금의 기술 생태계는 변화가 빠르기 때문에, 의욕만 앞서 귀납적으로 모두 다 경험해보겠다는 태도는 그다지 효율적인 접근 방법이 아닙니다. 이럴수록 기본기에 충실해야만, 새로운 기술 흐름에 압도되지 않고, 스스로의 방향성과 페이스로 앞으로 나아갈 수 있습니다.

FE, BE, 데이터와 관련하여 하루가 멀다 하고 새로운 구현체들이 온갖 미사여구로 무장하여, 공부하지 않으면 마치 도태될 것 같은 느낌을 줄 텐데, 이들 기저의 구현 철학과 원리를 이해하고, 우리가 사용하려는 응용의 특성에 맞게 잘 활용할 수 있는 연역적인 혜안을 갖추는 것이 바로 기술 기본기라고 생각합니다.

더불어 이들 기술 기본기는 명멸하는 구현체들에 비해, 그렇게 빠른 속도로 변화하지는 않고 축적되기 때문에,
효율성 차원에서라도 먼저 우선순위를 가지고 투자할 가치가 있다고 생각합니다.

ㅇㅇㅇ 책임리더 / NAVER 비즈플랫폼 개발


 

뭐 Q&A는 이렇습니다.