NHN OPEN TALK DAY 2019 참가 후기
NHN OPEN TALK DAY에 다녀왔다. 지난주부터 후기를 작성하려 했는데 작성하던 글의 임시저장 내역이 여러차례 통째로 날아가서 이건 어디다 올리지 말라는 무언의 계시(?)인가 고민하다가 다시 한번 글을 작성한다.
OPEN TALK DAY는 예비 개발자를 대상으로 NHN의 신입 채용 절차를 소개하고 선배 개발자들과 네트워킹할 수 있는 행사다.
올해는 동아리 단위로 참가 신청을 받아 나는 디프만 사람들과 함께 다녀왔다.
우리 동아리에서만 10명 넘게 신청했으니 취준생들의 많은 관심을 모으는 자리인듯 싶다.
기출 문제 코딩테스트
행사 참가 신청 후 받은 메일을 읽어보니, 기출 문제 코딩테스트를 진행한다는 안내가 있었다.
이렇게 불특정 다수를 모아놓은 행사에서 코드리뷰를 진행한다는 것이 매우 신선하게 느껴졌다.
제공받은 기출 문제는 알고리즘 1문제로, 구름 IDE를 통해 제출할 수 있었다. 선택 가능한 언어는 C++, Java 두가지이고 동아리당 대표 계정 하나로만 제출이 가능했다.
코드리뷰가 어떻게 진행될지 호기심이 생기기도 하고 기대도 됐기에 나름 열심히 풀이를 했다.
최단 경로를 찾는 문제였는데, 입력받은 좌표 정보를 인접 행렬로 변환한 후 BFS를 적용하니 풀렸다. (모든 예외처리를 알맞게 했는지 자신은 없지만....) 체감 난이도는 프로그래머스 기준 레벨 3정도 되는 것 같다.
제출한 소스는 링크에서 볼 수 있다.
제공받은 문서에 적힌 리뷰 기준은 아래와 같았다.
- 예시 입/출력 외에 다양한 케이스를 돌려서 문제에서 제시한 요구사항을 만족하는지 확인합니다.
- 요구 사항을 만족시키는 범위에서 예외 처리도 꼼꼼하게 처리를 했는지 확인합니다.
- 효율적인 알고리즘을 선택했는지, 설계와 코드 품질을 중요하게 봅니다.
행사 당일
행사는 판교에 있는 NHN 사옥에서 진행되었다. 예상은 했지만 사옥은 정말 끝내줬다..!! 역시 사옥있는 회사가 짱인 것 같다.
방문증을 받고 행사장으로 올라가니 맛있는 간식과 귀여운 스티커들을 나눠주셨다. 보기만해도 인사팀에서 이 날을 위해 많은 준비를 했다는게 느껴졌다.
회사 소개 및 채용 프로세스 소개
회사 소개 시간에선 회사의 멋짐을 소개받았다. 임직원 복지도 넘나 좋다.
NHN에 대해선 두레이(디프만에서 협업툴로 썼다)랑 한게임, 페이코를 제외하면 아는게 없었는데 교육 분야를 비롯해 꽤 다양한 분야의 서비스를 운영 중이라는 것을 알 수 있었다.
현재 NHN에서는 신입 개발자 공개 채용을 진행 중이다. 올해는 SW 개발 부분만 모집한다.
서류 접수, 코딩 테스트, 필기 시험, 2차례의 면접으로 이루어진 긴 프로세스를 거쳐야 최종 합격의 문턱을 넘을 수 있다.
채용 프로세스에서 가장 강조한 것은 '기본기'였다. (사실 이날 보고 들은 모든 내용을 한 단어로 요약하면 기본기다.)
많은 프로젝트 경험과 대외활동도 좋지만, 그보다도 전산학 기본 지식을 갖추고 있는지의 비중이 더 크다는 얘기를 들었다.
그래서 그런가 모든 절차가 알고리즘, 자료구조, 운영체제 등 전산학에 대한 기본이 잘 잡혀있는가를 확인하는데 초점이 맞춰진 듯 했다.
지금의 인기 기술들이 당장 몇년 후에도 사용될지 장담할 수 없을 정도로 빠르게 변화하는 IT 업계이기 때문에, 가장 근간이 되는 지식을 검증하는듯 하다.
코딩 테스트에서는 테스트 케이스 통과 여부가 주된 평가 요소고, 필기 시험은 정보처리기사와 유사하게 주요 과목 객관식으로 출제된다고 한다. Feel the TOAST는 일종의 체험형 면접으로, 일일 근무 체험을 하면서 기술 과제를 수행하고 코드 리뷰 시간을 가진다고 한다.
OTD 선배와의 대화
그 후로는 작년에 OPEN TALK DAY에 참석한 후 그걸 계기로 NHN에서 근무하게 된 개발자 분들을 패널로 모시고 세션이 진행되었다.
채용 절차를 선행해본 분들의 생생한 경험담과 단계 별 꿀팁을 들을 수 있어서 유익한 시간이었다 ㅎㅎ
그리고 두분다 개발에 대한 열정이 크다는게 느껴졌기에 듣는 것 만으로도 많은 자극이 되었다.
아래는 들으면서 중간 중간 두서없이 메모한 내용이다.
-
지필 테스트는 수능을 보는 느낌. 컴공과 1학년부터 4학년까지의 전 과정이 다 나온다. 문제의 질이 굉장히 좋다.
-
Feel The TOAST에서 문제를 완벽히 풀지 못했지만 주석으로 논리를 남긴 것으로 면접관 분들과 대화를 했고 그 결과 합격했다.
-
지원자의 태도를 나노단위로 확인하려는 자리는 아니고, 기본기를 갖추고 있는지와 개발에 얼마나 관심이 있는지를 확인한다.
-
최종 면접에서도 알고리즘 문제 풀이를 진행했다. 면접관 분들과 소통을 하면서 같이 일할 수 있는 사람인지 확인하는 것이 중요한 것 같다.
-
좋은 개발자가 되기 위해 열정도 중요하지만, 그만큼 주변의 환경도 중요하다. NHN에는 많은 자체 서비스가 존재하고 성장할 수 있는 환경이 갖춰져 있다.
-
면접에서 모르는데 괜히 아는 척을 하면 안된다. 모르는 건 모른다고 솔직히 얘기하고 잘 모르겠지만 내가 생각하기엔 ~한 식으로 흘러갈 것 같다고 의견을 제시했던게 좋은 인상을 준 것 같다. 면접관 분들과의 케미도 중요하다.
-
NHN은 알고리즘과 자료구조를 좋아하는 회사다. 추천 도서는 <자바로 배우는 핵심 자료구조와 알고리즘>
- 개발 자체를 좋아하고 즐기는 사람들이 많고 그런 사람들과 함께 일할 수 있다는 것이 좋다. 개발자가 일하기에 매우 자유로운 분위기가 만들어져 있고 타당한 이유가 있다면 신기술 도입에도 열려있다.
개발자가 되고 싶으신가요?
개발자인 동시에 회사원으로서의 이야기를 들을 수 있었다. 발표자님은 경력이 많은 개발자 분이셨어서 발표에 많은 경험이 녹아있다는 것이 느껴졌고, 좋은 개발자가 되기 위한 태도에 대해 생각해볼 수 있었다.
사진에 나온 슬라이드는 좋은 개발자의 조건에 대한 내용이었는데, 상단에 있을 수록 우선순위가 높다.
보면 개발자로서의 역량보다 커뮤니케이션 능력과 남을 배려하는 자세가 더 상위에 있다. 많은 동료들과 함께해야하는 조직인만큼 필수불가결한 조건인 것 같다. 하나하나 좋은 말씀이 많았는데 그중 일부를 메모해두었다. 이것만 보면 맥락을 이해하기 어려울 것 같지만...
-
회사의 입장 vs 직원의 입장
-
회사는 적은 비용으로, 빠르게 성과를 내는 것을 원한다.
-
과한 업무량으로 대기업에 다니고 있어도 퇴사를 고민하는 사람이 많다. 좋아하는 일을 직업으로 삼은 것 만으로 절반은 성공한 삶. 되는 것이 좋은 것이 아니라 하는 것이 좋은 것.
-
내가 생각하는 개발자로서의 나의 능력과, 남이 생각하는 나의 능력과 평판이 다를 수 있다. 나의 노력이 내일 바로 반영되는 것은 아니다. 매일 매일 꾸준히 해온 일이 모여 시간이 흘러 돌아오는 것이다.
-
꼭 NHN이 아니더라도 개발자의 성장을 위한 환경 개선의 의지가 없는 회사에는 가면 안된다.
-
스프링을 기준으로 할 때, 스프링이라는 것이 왜 만들어진 것인지 그 배경을 이해하고 있어야 한다. 어노테이션 하나도 그냥 무작정 쓰기보다는 왜 그 자리에 들어가야 하는 것인지 알아야 한다. 단순히 지식을 외우는 선에서 멈추는 것이 아니라, 그게 어디에 적용되면 좋을지 알면 좋다. 예를들어 DFS와 BFS를 단순히 외운 사람과 그걸 어디에 써야 하는지를 아는 사람은 다르다.
- 추천 자료 : https://www.slideshare.net/cybaek/ss-80687819
Hello 월급, 취업 준비기
NHN에서 주니어 개발자로 근무하는 분의 발표였다. 어떤 계기로 개발자가 되었고 NHN에서 월급을 받게 되기까지 무엇을 어떻게 준비하셨는지 들을 수 있었다. 외주 경험을 비롯해 다양한 프로젝트 경험을 지니고 계신 분이었다. 말씀을 재밌게 잘하셔서 듣느라 바빠서 기록을 못남겼다.
- 나에게 필요한 것은 뭐든지 만들어보기, 나 혼자 쓴다기보다는 모두에게 서비스할 수 있도록 만들어보기
기출 문제 코드리뷰
사전에 풀었던 기출문제는 작년 Feel the TOAST 전형에서 오전 과제로 나왔던 문제라고 한다.
이런 문제를 오전 시간 안에 다 풀고 가독성, 예외처리, 테스트케이스를 꼼꼼하게 챙겨야한다니 난 갈길이 먼 것 같다는 막막함을 느꼈다.
문제의 풀이 방법과 리뷰 포인트, 사람들이 많이 틀린 테스트케이스에 대한 설명을 들을 수 있었다.
이 문제의 경우 root가 공통 조상이 아닌 경우와 출발지와 도착지의 depth가 동일할 때 많이들 틀렸다고 한다.
예외처리의 경우 어느 정도까지 포함해야 하는지 범위가 궁금했는데, 문제 설명에 나온 '유의사항' 내용 정도를 잘 챙기면 된다고 한다. 입력으로 주어진 범위를 벗어나는 값이 들어오지는 않는다. 또 NHN의 경우 코딩테스트에서 값을 입력 받는 코드를 직접 짜야한다. 이 때 표준 입출력 처리를 잘 하는지도 리뷰에서 중요하게 본다고 한다.
그리고 코딩 테스트에서 신경써야 하는 부분이 무엇인지 얘기해주셨는데,
실제로 코드를 짤 때 유념해야 하는 사항들이라 앞으로 어떻게 연습을 해야할지 방향을 잡을 수 있었다.
신경써야 하는 점
- 구체적인 이름으로 네이밍하기
- main 함수는 심플하게, 너무 길지 않게 잘게 쪼개는 연습이 필요하다
- 클래스를 활용해 프로그램을 객체지향적으로 작성하는 연습이 필요하다. Java로 응시할 경우 객체를 잘 설계하는 것이 중요하다. 정의하고 상태는 멤버변수, 행위는 메서드로 정의해야 한다.
- 무분별한 static 변수 사용을 줄이기
- 접근 지정자를 적절하게 이해하고 사용하기
- 중첩을 최소화하기, 중복 코드는 별도의 함수로 분리하기
- 사용한 자원은 해제하기 (ex. Scanner 객체를 생성한 후 없애야 한다)
좋은 코드를 작성하기 위해서
- 정적 분석 도구 활용하기
- 잘 짜여진 코드 읽기
- 테스트 코드를 작성하기
- 주어진 요구사항을 잘 파악하기
- 작성한 코드를 계속 개선하기
행사 종료 후
퇴장을 하면서 두가지 선물을 더 받았다. 동아리 이름이 새겨진 큐브와 책이었다.
큐브는 사내에서도 그 의미가 깊은 유니크한 아이템이라 동아리당 하나씩 받았는데, 작년엔 이걸 두고 쟁탈전을 벌인 동아리도 있었다고 한다. 우리는 동아리 회장님께 회사 굿즈로 간직하시라고 전달해 드렸다.
받은 책은 <실용주의 프로그래머>라는 유명한 서적으로 참석한 전원이 한권씩 받을 수 있었다. 책은 일반적인 기념품의 범주에 들어가지 않는 것이다보니 감동적인 선물이었다. (사내에 직접 설문을 돌려서 책을 선정했다고 한다) 기념품 인당 단가로 이정도를 쓰다니 역시 보통 회사가 아니다. 판교로 몸뚱이만 왔을 뿐인데 양손 무겁게 집에 돌아갔다.
그리고 사내 식당에서 저녁식사를 했는데...
밥이 엄청 맛있다!!
식당이 모두에게 이렇게 큰 임팩트를 줄진 예상치도 못했다. 다들 밥 먹으면서 밥이 맛있다는 얘기만 했다.. 그리곤 근처에 있는 호프집에서 병맥주를 간단히 마시고 헤어졌다.
겨우 몇시간밖에 못겪었지만 개발 문화부터 삼시세끼까지 NHN의 엄청남을 온몸으로 느낀 하루였다.
의미있는 경험을 할 수 있게 자리를 마련해주신 NHN 직원 분들과 함께 참석한 동아리원들에게 진심으로 감사의 말씀을 전한다.
'else' 카테고리의 다른 글
2019 핵데이 윈터 코딩테스트 후기 (3) | 2019.10.15 |
---|---|
나는 LINE 개발자입니다 도서 리뷰 (0) | 2019.10.12 |
혼자 공부하는 C언어 리뷰 (0) | 2019.09.14 |