반갑습니다.
센트빈입니다.
오늘도 개발 실력을 올리고 좋은 회사에서 일하고 싶은 분들에게 인사이트를 줄 수 있는 글을 가져와 봤습니다.
오늘의 주제는 네카라쿠배당토(대기업)에 취업하기 입니다.
많은 개발자분들이 한번쯤은 가보고 싶은 회사가 있습니다.
네카라쿠배로 시작하여 지금은 네카라쿠배당토까지 확장된 회사들입니다.
이 회사들의 공통점은 개발자로써 성장이 매우 기대되며, 배울 사람들이 많다는 점입니다. 또한, 복지도 다른 회사보다 좋으며, 개발자 우대가 좋다는 공통점이 있습니다. 좋은 개발자들이 모이기 때문에 SKY 대학처럼 좋은 개발자란걸 설명하지 않아도 출신으로 어느정도 믿고 갈 수 있다는 증명이 되곤 합니다.
그렇기 때문에 개발자로써 한번은 거쳐가면 좋다고 생각합니다. 필자도 한번은 접해보고 싶기 때문에 현업에서 열심히 실력을 쌓고 다시금 문을 두들기기 위해 노력하고 있습니다.
좋은 회사를 가는 가장 좋은 방법은 자신의 기준을 올리는 것입니다.
공부를 하는 학생분들을 기준으로 주변을 한번 둘러봅니다. 친구들의 개발 실력은 어떠한가요? 내가 가장 잘한다고 생각된다면 꼭 환경을 바꾸고 스스로의 기준을 더욱 높혀 잡기를 추천드립니다.
네카라쿠배당토를 가보면 생각 이상으로 좋은 학벌의 개발자분들이 많습니다. 학벌로 뽑히는 것이 아닌 해당 학교에서 같이 공부하는 분들의 실력이 매우 높기 때문에 상향 평준화가 되어 있습니다. 그 상황에서 열심히 공부만 하더라도 저 회사에 취업이 됩니다.
최대한 높은 기준을 가진 사람들을 만나보세요. 현업에 있는 현직 개발자도 이직하는 이유 중 하나가 “내가 스스로 발전할 수 없으면 배울 곳을 찾아 이직한다” 입니다. 성장을 위해서 환경을 만드는 것이죠. 환경은 매우 중요합니다. 함께 목표에 도달한 동료가 있으면 좀 더 수월하게 목표 달성을 할 수 있다는 점을 기억하세요.
그리고 입사해보면 거기있는 개발자들이 전부 탈인간급으로 잘하거나 맨날 앉아서 개발만하는 사람만 있는 것은 아닙니다. 평범한 실력으로도 어필을 잘하고, 다른 부가적인 것(커뮤니케이션 등)을 잘해서 계시는 분들도 있습니다. 회사에는 다양한 사람이 필요로하고, 개발을 좀 못하더라도 미래를 보고 채용하는 경우도 있습니다. 그렇다 하더라도 다음에 나오는 이야기는 꼭 마음에 새겨두어야 합니다.
최대한 깊이 있게 파라.
개발을 하다보면 매우 많은 것들을 배워야 한다는 강박증이 있습니다. 워낙 많은 기술들이 나오고 사라지고를 반복하다보니 모르면 도태된다는 생각을 가지게 됩니다.
면접을 많이 가보신 분들은 알겠지만 면접관이 물어보는 것은 한정되어 있습니다. 더 웃긴건 당연히 알거라 생각했던 기술을 면접관이 모르는 경우도 있습니다.
이 사례를 보더라도 본인이 알고 있는 기술에 대해서 얕게 아는 개발자보다 그것을 깊이 있기 알아 면접관에게 설명해줄 수 있는 개발자를 면접관은 높게 쳐줍니다. 왜냐하면 팀에서 사용하고 있는 기술도 깊게 파서 공유해주는 실력있는 개발자라고 생각하기 때문입니다.
많은 것들을 알고 있으면 좋습니다. 다만 깊이 있는 지식 하나가 없다면 아무 의미가 없습니다. 하나 정도는 깊게 알아야 다른 지식도 깊이 팔 수 있을거란 기대감을 가집니다.
이것 저것 해야하는 불안감은 이 글을 쓰고 있는 저 또한 가지고 있습니다. 하지만 뚝심있고, 깊이 있게 하나의 지식을 파보지 않으면, 다른 지식도 깊이 있게 알기가 어렵습니다.
깊이 있는 지식을 가지기 좋은 방법 중 하나는 구글에 검색된 자료를 10페이지 넘게 모든 글을 읽어보는 것입니다. 보다보면 중복되는 내용이 많아지면서 금방금방 넘어가게 되고, 뒤에 숨어 있던 깊은 지식을 얻어 낼 수도 있습니다.
기본을 튼튼히 쌓자.
제가 본 면접에서 특히 네이버는 기본적인 내용들을 많이 물어봤었습니다. 지금도 그러는지는 모르겠지만 Null 처리 및 Null에 대한 내용, GC에 대한 내용, 기본 자료구조를 활용한 문제 대응 능력 등 기본적인 컴퓨터 과학 문제와 문제 해결 능력을 검증했습니다.
특히 신입같은 경우 기본적인 내용을 잘 모른다면 면접관 입장에서 학교나 학원에서 배운 기본적인 것도 모르는 친구에게 일을 맡길 수 없다는 생각을 가질 수 밖에 없습니다. 특히, 새로운 기술을 익히거나 문제를 확장할 때 기본이 부족하면 따라갈 수 없습니다.
오래된 지식이 아직도 중요하다고 한다면, 그건 이유가 있기 때문입니다. 새로운 기술도 좋지만 기본적으로 알아야 하는 지식은 계속해서 복습해야 합니다.
기본적인 컴퓨터 과학은 운영체제, 자료구조, 알고리즘, 네트워크, 데이터베이스 정도가 되겠네요. 여기에 자신이 메인으로 사용하려는 언어와 프레임워크를 추가로 공부하면 좋습니다. 이 후에 아키텍처, 디자인 패턴, 코드 리펙토리 등 다양한 분야로 진입하시면 되겠습니다.
신입한테 아키텍처 짜라는 사람 없고, 디자인 패턴 전부 적용시키라는 사람 없습니다. 다만 코드를 짤 때 지켜야 하는 룰 정도는 익히는 것이 좋습니다. 자료구조, 알고리즘을 공부하다보면 익히게 되는 것이고, 언어 공부를 하면 좋은 코드를 예시로 제공되기 때문에 따라서 하는 걸 추천합니다.
누군가에게 도움이 될 법한 프로젝트를 진행하세요.
결국 현업은 고객들에게 서비스를 제공하기 위한 어플리케이션을 제작하는 것입니다. 즉, 내가 만든 프로젝트가 남들이 써보고, 피드백을 받아본 경험 있는 개발자를 선호합니다. 개발자 마인드와 사용자 마인드는 매우 다르기 때문에 이 과정을 매우 중요하게 여깁니다. 특히 협업을 할 때는 말이죠.
프로젝트를 진행하고 직접 서비스를 오픈하면 정말 다양한 문제를 직면하게 됩니다. 이런 문제들을 하나씩 해결해 나가면서 기록하고, 공유하면 그 과정이 자신의 포트폴리오가 됩니다. 그리고 비슷한 문제가 발생했을 때, 기록한 문서를 보고 금방 문제를 해결 할 수도 있죠.
특히 Github에 올라간 코드는 자신의 코딩 스타일을 어필 할 수 있는 방법입니다. 면접관 입장에서 지원자가 작성한 코드를 보는 것이 면접 여러번 보는 것보다 빠르게 판단할 수 있습니다. 그래서 많은 프로젝트를 진행할 필요는 없습니다. 하나의 프로젝트에 다양한 기능을 넣고, 리펙토링을 걸쳐 읽기 좋은 코드를 만들어보세요.
프로젝트에 대한 생각이 안난다면 사이드 프로젝트가 모여있는 사이트를 참고해서 만들어도 되고, 유튜브에 올라온 클론 코딩도 좋습니다. 특히 신입은 클론 코딩을 하나 잡고 코딩을 하면서 왜 이렇게 짰는지, 짯던 코드이 기능은 무엇이고 왜 썼는지를 분석해서 기록하면 좋은 포트폴리오가 됩니다.
꼭 지식이 되도록 파게되면 그 노력을 알아주게 되는 거죠.
결론
대기업에 취업하는 방법을 썻지만, 좋은 개발자가 되는 방법을 모아 놓은 이야기가 되었습니다. 현재 자신의 상태를 점검하고, 좀 더 좋은 개발자가 되기 위해 고민하면서 위에 내용들을 참고해보세요. 그리고 회사는 결국 좋은 서비스를 만들기 위한 많은 기술자를 뽑는 곳이기 때문에 말 잘듣고, 일을 열심히 하는 사람을 좋아합니다. 그리고 많은 사람이 필요하다는 점 꼭 잊지 마세요. 특출난 한 사람만 뽑는 곳이 아닙니다.
네카라쿠배당토에 가서 성장, 복지, 명예를 얻는 것도 좋지만 그 회사가 나의 자랑이 되어서는 안됩니다. 더 높은 기준(직접 서비스 런칭해서 작은 사업을 일으킨다거나, 해외로 나간다거나)을 잡아야 그 다음 커리어가 생기게 됩니다. 지금 이야기한 내용은 일반적인 개발자가 되기 위한 조건이기 때문이죠.
많은 개발자 분들이 더 좋은 곳에서 즐겁게 일하길 바라는 마음에 작성했으며, 다양한 의견은 언제나 환영입니다.
개발자 및 예비 개발자 분들 모두 화이팅입니다!
감사합니다.