개발자 신입분들께 첫 회사를 선택할 때 드리고 싶은 조언
안녕하세요. 개발자 신입 후배분들. 첫 회사에 입사함에 있어서 구직 과정도 어려울 뿐더러 어떻게 회사를 선택해야 하는지 고민이 많으실 것 같습니다. 눈팅만 하다가 몇자 드리고 싶은 말이 있어 글을 적어 봅니다.
각자 인생의 때와 인연, 운의 닿는 힘이 다르니 타인의 인생에 '조언'이라는 것을 함이 얼마나 우스운 것인지 생각하면서도, 먼저 길을 걸어간 선배들 중 한 사람으로서 드리는 말을 한 번쯤 생각해보고 도움이 되셨으면 하는 마음으로 글을 적습니다.
신입이기 때문에 선택지가 적어서 그냥 부르는 곳으로 가요, 라고 하실 수도 있지만, 잘못된 첫 회사 선택으로 실력을 쌓기는 커녕 시간을 날리고 이 업계에 마음의 상처를 입는 경우를 여럿 보았습니다. 다음 몇 가지를 염두하시고 결정하면 그래도 개발자로서 어엿한 첫 출발을 하시는데 도움이 되리라고 생각합니다.
첫째는 개발 프로세스가 확립된 곳으로 가라, 입니다.
면접에 들어가셔서는 연봉이나 기타 복지보다도 회사의 개발팀의 인원이나 자신이 맡을 역할을 리드해 줄 팀장 혹은 선배 개발자가 있는지 꼭 확인하셔야 합니다. 협업을 위한 툴은 어떤 것을 사용하는지, 일은 어느 정도 진행되어 있는지, 어떠한 기준으로 인력을 나누어 일을 분배하는지도 확인하시기 바랍니다. "구글이 최고의 사수"라는 말도 맞고, 시니어라고 해서 헤매는 일이 없는 것도 아닙니다만, 앞으로 쭉 혼자서만 개발을 하실 것이 아니라 팀으로 협업을 해야할 것이라면 개발은 단순히 코딩 지식만을 의미하는 것이 아니라, 타인(기획자, 타 개발자, 디자이너)과 의사소통하고 일의 순서를 익히고, 타인과 협업이 가능한 재사용하고 확장 가능하고 깨끗한 코드를 작성하는 것을 의미하게 됩니다. 그래서 처음 배우실 때부터 전체적인 개발의 프로세스가 잘 확립된 곳으로 가셔야 합니다. 그렇지 않을 경우 두번째 들어갈 회사에서는 신입도 경력자도 아닌 애매한 사람이 되어버립니다.
(그런 의미에서 사수가 없거나 제대로 된 아키텍쳐가 나오지 않은 초기 스타트업은 신입 개발자와 합이 맞지 않습니다.)
둘째는 대표의 마인드가 IT 기술 친화적인지를 꼭 확인하라 입니다.
대기업이 아니라 중소기업 혹은 스타트업에 입사하실 신입분들이 더 많으므로 이 말을 두번째에 적었습니다. 작은 기업에서 대표는 곧 왕입니다. 보통 IT 스타트업에 도전하는 대표들은 개발자 출신들이 많지만 그렇지 않은 경우도 상당합니다. 기존에 제조업, 요식업 등의 다른 사업을 하셨거나 아니면 전혀 다른 일을 하다가 번뜩이는 자신의 아이디어 하나로 IT 스타트업을 연 대표들의 경우 보통 개발을 잘 모르기에 단가가 싼 인력을 구하고자 신입을 많이 채용하게 됩니다. 처음에는 코딩 테스트도 보지 않고, 자신을 그저 믿어주며 격려해주는 비개발자 대표가 신입 입장에서는 더욱 상대하기 맘편할 수 있겠지만,
개발의 중요성을 잘 모르기에 무조건 저렴한 임금만을 고집할 수도 있고, 개발 일정이나 기능들에 독단적 결정을 내릴 수 있으며, 무엇보다 자신의 아이디어가 비즈니스의 핵심이고 개발자는 그냥 만들어내는 공장직원 수준으로 생각할 수 있어 비개발자 대표 밑에서 개발자로서의 정당한 대우를 받기란 시간이 갈수록 어려워질 수 있습니다. 설사 그런 면에 불만을 표출해도 '내가 너를 실력도 부족한데도 뽑아서 일 시키며 개발 실력을 키워줬는데'라고 생각하는 대표들도 많이 있습니다. 제가 주위에서 본 실패한 신입 취업의 대부분의 유형은 바로 이에 해당하는 유형이었습니다.
대표가 개발자가 꼭 아니더라도, 이 IT 업계에 대표로서 들어오기 전과 후 기술적인 트렌드와 만들려고 하는 애플리케이션의 기술적인 난이도, 시장성 등을 (객관적이 될 수는 없겠지만 그래도 객관적으로) 공부하고 바라보고 있는지 꼭 확인하시기 바랍니다. 대표가 단순히 영업이나 마케팅을 하는 사람들과 어울리는 것이 아니라, 주위 개발자들을 신뢰하고 그들의 이야기를 듣고자 하는 사람인지 면접시 대화를 통해 꼭 알아보셔야 합니다. 모바일 앱이나 IT 솔루션을 만들려고 하는 사람이면서도, 마케팅 부분에만 집중할 뿐 기술적인 이야기나 개발자들간의 커뮤니티에는 관심도 의미도 두지 않는 대표들이 있습니다. 그런 곳으로 가면 신입은 아주 낮은 대우를 받으며 제대로 성장하기 어렵습니다.
셋째는 적어도 2년 정도는 다닐 수 있는 회사로 가라.
어느 정도 경지에 오르면 그 이후에는 자기의 실력에 따라 6개월마다 한 번씩 프로젝트를 골라가며 이직을 해도 상관이 없습니다. 하지만 신입은 제 생각에는 첫 회사에서 적어도 1년에서 2년간은 꾸준히 배워가야 비로소 개발을 전체적으로 불 수 있는 눈이 생기게 됩니다. 첫 회사에서만큼은 흔들림 없이 2년은 있어야겠다는 생각으로 구직을 하시고, 본인이 2년 정도는 다닐 수 있을 것 같은 회사를 선택하시기 바랍니다. 회사의 자금력을 보아 향후 2년간은 꼬박꼬박 밀리지 않는 월급을 받을 수 있겠는지, 거리가 너무 멀지는 않은지, 내가 속한 프로젝트가 단발성의 사업인지 아닌지 등을 확인하시고 입사하시기 바랍니다.
돌이켜보면 첫 회사에 입사하여 2년차 정도까지, 그 시기 신입때만큼 자신이 폭발적으로 성장한다고 느끼는 시기도 드문 것 같습니다. 어떤 사수를 만나고, 어떤 회사에 입사하여 어떤 개발 문화를 접하느냐에 따라 충분히 멋지게 실력적으로 성장할 수 있는 것이 주니어의 기간인 것 같습니다. 모쪼록 자신의 실력 향상과 올바른 개발 및 협업 문화를 체득한 개발자가 되는 것을 목표로 하시고 각자에게 맞는 바른 기업을 찾아가시기를 기도합니다. 긴 글 읽어주셔서 감사합니다.