- 네이버 소개
- Yandex(러시아), 바이두(중국), 구글(미국) 과 같이 자국에서 시작되어 자국민이 많이 쓰는 서비스
- Naver는 어떤 정치적 비호 없이, 기술에 포커싱해서 성장
- 매출의 25%를 기술에 투자
- 다양한 도전 -> 이것도 네이버였어?
- 라인
- 스노우, 제페토
- VLive
- Works Mobile
- Yandex(러시아), 바이두(중국), 구글(미국) 과 같이 자국에서 시작되어 자국민이 많이 쓰는 서비스
- 네이버에서 낱낱이 알려드립니다.
- 왜 네이버에서 개발해야 되나? -> 여기서 개발하면 몸값이 올라간다!
- share
- 코드리뷰
- 사내 밋업, 클래스 -> http://share.navercorp.com
- scale -> 네이버가 돈&데이터가 제일 많다!
- 10억개 쇼핑 상품 가격 한번에 업데이트
- 초당 수만 요청이 오는 아이돌 스타 예약
- 쇼핑 상품 카테고리 매치를 ML로 하기 /w 2000만 학습셋
- 전국민이 보는 웹 페이지 1.5sec내에 로딩하기
- Global -> 국내에만 국한된 서비스가 아니다.
- share
- QnA
- 네이버에서 원하는 인재 : 빨리 배울 수 있는 기초 체력이 있는 사람
- Cs 탄탄한 사람 vs 프로젝트 경험이 많은 사람 -> 답은 없지만 발표자는 Cs탄탄한 사람을 뽑을 것
- 왜 네이버에서 개발해야 되나? -> 여기서 개발하면 몸값이 올라간다!
- n년차 선배가 알려드립니다.
- 인공지능 시대의 모바일 개발자 -> 클로바 iOS앱 개발자
- 네이버의 앱 개발자가 되기까지...
- 기초가 중요하다. -> 러닝 커브를 쉽게 넘어갈 수 있다.
- 다양한 토이 & 사이드 프로젝트 경험 -> 자기가 많이 쓰는 앱을 카피라도 해보자, 많은 경험은 무기가 된다.
- 개발에 참여 -> 협업 경험의 필요성
- 인공지능 분야의 도전 -> 여러 분야에 다양하게 관심을 가지자
- 네이버의 앱 개발자가 되기까지...
- 비전공자가 네이버개발자로 일한다는 것 -> Search & Clova Integrated Search
- Integrated Search?
- 명확한 의도의 질의 -> 한눈에 정답을 얻을 수 있도록(Good abandonment)
- 정보탐색형 질의 -> 직접 클릭하며 탐색이 필요하다.
- 네이버의 비전공자로써 더 좋은 점
- 탄탄한 인프라, ex) 분산 처리를 위한 프레임워크를 자체적으로 제공
- 보고 배울 수 있는 훌륭한 동료들
- 다양한 성장 기회
- 사내 클래스, 밋업 등의 도서비 지원
- 연구 조직으로써 논문 출판 기회
- 세미나에서의 발표 기회
- Integrated Search?
- 신입 개발자에게 스펙보다 중요한 것
- 네이버 랩스에서 하는 일? - Node.js, Go, k8s, Server, CI/CD, React.js, Flutter, 코드리뷰, 자동화, 대용량..., -옆팀간섭-
- 일반적인 기술이 모여 특별한 것을 만들어 낸다.
- 불안한 취준생
- 토익 X, 학점 3.0, 공모전 X, 프로젝트 X, 인턴 X, 실무경험 X
- 학점은 낮아도 과목은 신경썼다. -> 당시 A+받은 친구들도 자기한테 물어보더라
- 기본기만으로 회사에 올 수 있는 게 당연하다.
- 도구는 거들 뿐
- 좋은 회사는 신입에게 실무 경험을 요구하지 않는다. -> 다양한 스택을 써보면 좋지만, 필수는 아니다.
- 교과서 위주로 -> 학원X, 선행학습X
- 뭐가 기초인가?
- 알고리즘 - 정렬, 탐색, 시간복잡도, 공간복잡도
- 새로 고안하는 경우는
- 컴퓨터 구조
- CPU, ALU
- 공유자원
- 메모리 계층 구조
- 왜 빠른지
- 얼마나 빠른지
- 네트워크를 타는 메모리 vs 로컬 보조저장장치
- 현업에서의 기초 예시
- 압축 전송 vs 비압축 전송 - CPU 자원이 소중한가, 데이터 트래픽이 소중한가
- 디스크가 메모리보다 빠르다? -> 연속된 공간에 대해서는 오히려 디스크가 빠르다. -> Apache Kafka
- 데이터를 나눠서 저장 -> 데이터를 모으는 게 아니라 코드를 데이터로 가져가 처리한다 -> Hadoop, MapReduce
- 면접에서 기초
- 링크드리스트와 배열의 차이?
- 스택이란?
- 너비 우선 탐색? 깊이 우선 탐색?
- 알고리즘 - 정렬, 탐색, 시간복잡도, 공간복잡도
- 결론 : 기초가 튼튼하면 반드시 훌륭한 개발자가 된다!
- 포트폴리오 준비하기 : 기초가 잘 드러날 수 있는 프로젝트를 하기(화려한 거 필요없다)
- 네이버가 좋은 점 : 합리적인 문화 & 개발에 집중할 수 있는 환경
- 네이버 랩스에서 하는 일? - Node.js, Go, k8s, Server, CI/CD, React.js, Flutter, 코드리뷰, 자동화, 대용량..., -옆팀간섭-
- 입사 이후 5년간의 성장 -> 비즈정보플랫폼
- 비즈정보플랫폼? 광고와 관련된 일을 하는 곳
- 어떻게 성장했는가?
- 입사 이후 첫 한달간 공통 신입 개발자 교육
- 부서 배치 직후 바로 첫번째 플랫폼 개발, 한 달 만에 서비스 오픈
- 신입이라고 작은 일 하는 거 아니고, 바로 실전이고 큰 기회가 많다!
- 대부분의 코드를 주도적으로 직접 개발
- API 설계도 직접 설계
- 외부 업체와의 커뮤니케이션도 훈련
- 끊임없는 스터디, 계속되는 공부
- 부서배치를 받은 첫 주부터 스터디에 참가
- 지금까지 수십개의 스터디에 지속적으로 참가
- 다들 자연스럽고 자발적으로 스터디를 개설하여 참가하는 분위기
- 저자 직강의 스터디도 있고, 내가 스터디의 강사가 되기도
- 다양한 사내 지식 공유와 기회
- 사내 경진대회 -> N innovation
- 그래서 무슨 일을?
- 광고 플랫폼 개발
- 돈과 관련된 민감한 시스템
- 신뢰성을 챙기면서도, 빠르게 변하는 시장 요구에 맞춰 새로운 서비스를 계속 내야한다.
- 돈이 되는 진짜 데이터를 우리나라 최고의 규모로 만져볼 수 있다.
- 광고는 IT 비즈니스의 꽃이자 열매
- 돈과 관련된 민감한 시스템
- 하고 싶은 개발을 합니다.
- 이런걸 만들어 보고 싶어요, 하면 만들면 된다.
- 어떤 기술 스택을 쓰는가? 내가 쓰고 싶은 기술, 잘 설득해서 잘 쓰면된다.
- 광고 플랫폼 개발
- 스타트업에서 네이버에 오기까지 경험한 개발자 문화 -> 네이버 앱 개발
- 자유롭고 유연한 스타트업
- 가족적인 협업이 가능한 중소기업
- 안정화된 프로세스의 중견기업
- Naver: 앞선 조직들의 장점을 모두 포괄한다. -> 다양한 조직이 혼합되어 있다.
- 네이버 앱 조직의 개발 문화
- 네이버의 거의 모든 서비스를 포괄하기 때문에, 거의 모든 서비스에 대한 이해가 생기게 된다.
- 다양한 서비스가 돌기 때문에, 도메인의 특성과 충돌 가능성에 대해서 체크해야한다.
- 코드 리뷰가 활발하다.
- 네이버에서 컨텐츠 서비스 개발자로 일한다는 것 - Zepeto 리더(개발자)
- 입사 전, 작은 회사를 창업해본 경험 -> 어떻게 디자이너들이 쉽게 일할 수 있게 할까? -> 디자이너를 위한 솔루션 개발 -> 라인에 회사를 팔게 되는데...
- 입사후 -> 카메라 서비스 -> 디자이너들의 아이디어를 최대한 수용할 수 있는 카메라 엔진 개발 필요 -> 이 엔진은 snow, b612 등에 적용되어 사용 중
- Zepeto -> 디자이너 손에서 기획,제작, 배포가 모두 이루어질 수 있는 플랫폼!
- 컨텐츠 서비스 개발자는 어떻게 일하는가? -> 디자이너와의 협업을 많이하게 된다. -> 디자이너의 일을 잘 관찰해보라
- 인공지능 시대의 모바일 개발자 -> 클로바 iOS앱 개발자
- 네이버는 이런 분을 원합니다.
- HackDay
- 2020년 신입개발자 모집, 신입 개발 공채! - 3년만, 9월 오픈
- 지원서 제출
- 온라인 코딩 테스트
- 1차면접
- 2차면접
- 신입개발자에게 바라는 것 = 전형을 관통하는 포인트
- 컴퓨터공학 기초역량
- 개발에 대한 애정 + 배우고자 하는 의지
- 논리적 사고력
- 중요한건, 러닝커브! -> 조직을 가리지 않고 뽑고, 교육 이후 배치되기 때문에 더더욱이...
- Q&A
- 네이버 개발자로써 가장 좋다고 생각하는 근무 환경 혹은 개발 환경
- 자유로운 출퇴근 시 -> 업무 효율을 최대화 할 수 있다.
- 최대한 자유롭게 하되, 협업을 더 우선순위에 두고 일한다.
- 긴급 근무 시간도 근무 시간에 포함되며, 근무 시간을 다 채우면 기안 쓰고 안나와도 된다 -> 원격으로 대응한다!
- 집에서 일해도 내 근무시간에 포함된다!
- 네이버의 소프트웨어 인프라
- 오픈소스를 Wrapping한 정도라, 여기서 배운 기술을 다른 회사에서도 쓸 수 있다. -> 어차피 다른 조직 가도 새로 배워야 하는 건 달라지지 않는다...
- 개인 프로젝트 등 자기개발 : 내부의 연구 성과도 뛰어나고, 근무 시간 이외에는 전혀 터치하지 않기 때문에 자유롭게 사용한다.
- 자유로운 출퇴근 시 -> 업무 효율을 최대화 할 수 있다.
- 프로젝트 중 가장 만족했던 일과 가장 어려웠던 순간
- 만족할만한 상황은 당연히 서비스가 잘 됐을 때, 다만 서비스가 너무 잘되서 터지면 좋으면서도 괴롭긴하다...
- 입사를 준비하면서 프로젝트, 대외활동, 자격증, 학업 등 가장 도움이 됐던 것이 무엇인가?
- 자격증 : 필요없다. 있어도 그만 없어도 그만.
- 학업 : 가장 중요하다. 다만 단순히 학점이 높은 건 아니다.
- 프로젝트, 대외활동 : 학업에서 배웠던 것들을 실전에서 경험하는 과정 -> 사소하더라도 계속해서 즐기는 모습을 보여주는 것이 좋다.
- 오픈 소스 참여?
- 모든 오픈소스가 품질이 높진 않다.
- 일단 오픈소스를 많이 써보고, 문제 해결이 안될 때 소스를 보면서 문제를 해결하는 과정을 하다보면 그게 오픈소스 참여다.
- 필요 역량을 너무 다양하게 요구하는 것처럼 보이지만, 해당 요구사항이 절대적이진 않다. 오히려 그 중에서 하나만 깊게 판 게 더 좋다. 심지어 해당 프레임워크 아니더라도 비슷한거 해봤으면 당당하게 말하면 된다.
- 수시 채용으로 바뀌는데 왜 다시 공채로 가는가? -> 신입 개발자들에게 문이 활짝 열려있다는 것을 알려주기 위한 제스쳐, 아예 단념하는 경우가 많아서..
- 기초 공부를 어떻게 하는가?
- 연습이 될만한 서비스를 구현해보라.
- 하고 싶은게 명확하면, 해당 언어와 OS의 기반 지식에 대해서는 알아야 한다. 그 외 클린코드, TDD, 디자인 패턴 같은 건 우선순위가 밀린다. -> iOS 라면 스레드 관련 코드를 어느정도 써봤는지, 디버깅은 해봤는지 등이 중요하다. 깊게 알면 좋겠지만...
- 비전공자로써 부족한 기초를 커버할 수 있는 무기는?
- 조급해하지 말고, 하고 싶은 분야를 정해서 깊게 공부해라.
- 결국 뽑히는 사람은 같이 일하고 싶은 사람이다.
- 네이버에 취업하는 길은 하나가 아니다. 다만 신입공채고 학생을 대상으로 하기 때문에 기초의 중요성은 굉장히 높다.
- 부문별 티오는 얼마나?
- 좋은 사람 많으면 많이 뽑을 예정이다.
- 비전공자는 부스트코스를 통해서 들어오는 것도 좋다.
- 네이버 개발자로써 가장 좋다고 생각하는 근무 환경 혹은 개발 환경