티스토리 뷰

https://unsplash.com/photos/4hbJ-eymZ1o

예비 개발자 분들께 조금이라도 도움이 되길 바라는 마음으로 작성했습니다. 주관이 잔뜩 담긴 글인데 혹여 이 글로 인해 불편한 마음 갖는 분이 없으시길 바랍니다. 

마이스터고 진학, 컴퓨터공학 관련 전공, 나아가 비전공자까지 닷컴 버블 이후로 이만큼 IT 업계가 호황인적이 없었기 때문에[1] 많은 사람들이 개발자 문턱을 넘으려고 합니다. 본 글에서는 개발자가 되려는 사람이 알아두면 좋을 것들을 정리합니다. 개발자로 진로를 선택한 누군가에게는 도움이 되길 바랍니다.


 

# 이건 누구를 위한 글입니까?

아직 현업에서 개발을 해본 적이 없지만 개발자가 되기를 희망하는 불특정 다수입니다. 특정 도메인이나 IT 전문 용어는 최대한 빼고 작성했습니다. 그럼에도 이 글이 어렵게 느껴지신다면 똥글이라고 욕하기보단 조용히 뒤로 가기를 눌러주세요. 😅

개발자로 진로를 정했는데 무엇부터 해야 하는지 캄캄한 터널을 지나고 있을 누군가에게 이 글이 조금이라도 도움이 되길 바랍니다.

 

# 다 같은 개발자일까요?

컴퓨터 앞에서 코드를 작성하는 모든 사람을 개발자라고 부릅니다. 여기서 구체적으로 직군을 조금 더 분류하면 프런트엔드, 퍼블리셔, 백엔드, DevOps, SRE, Data Engineer, Data Scientists, Data Analytics, Machin Learning Engineer, DBA, 그리고 여기 나열되지 않은 직군까지 매우 다양하게 나눠집니다. 개발자로 진로를 정했으면 본인이 가고자 하는 길을 선택하는 게 먼저입니다. 적성이 맞는 포지션에서 일하는 건 중요하니까요.

https://www.geeksforgeeks.org/what-is-the-difference-between-front-end-and-back-end-web-development/

 

프런트엔드, 퍼블리셔는 사용자의 화면에 보이는걸 모든 것을 개발합니다. 그리고 백엔드는 화면에 보이지 않는 뒷단을 개발하고, 데이터 엔지니어는 서비스에 들어오는 데이터를 비즈니스에 맞게 수집/가공/적재 등을 처리. 등등 직군별로 하는 역할이 나뉩니다. 자세한 건 직군 이름으로 검색하시면 훨씬 더 풍성한 자료를 얻으실 수 있을 겁니다.

아무튼, 길을 정해야 그다음 스텝을 생각할 수 있습니다. 하물며 자격증도 어떤 직군을 갈 거냐에 따라 달라질 수 있죠. 세단을 운전할 건데 버스 면허를 공부하고 있으면 안 되잖아요?

여기까지 읽어봐도 각 직군이 뭘 하는 건지, 어떤 걸 공부해야 하는지 가늠이 안될 수 있습니다. 각 직군별로 로드맵이 정리된 사이트가 있는데 여기 링크를 참고해 주세요. 절대 로드맵에 나온 걸 다 알아야 하는 건 아닙니다. 부담 갖지 마시고 이런 기술을 다루는구나 정도로 참고만 하시면 됩니다. 참고로 저는 인터넷에 떠도는 개발자 로드맵을 별로 좋아하지 않습니다. 너무 위화감을 준달까.. (웃음)

위에 언급된 건 주로 “서비스” 관점입니다. 예를 들면 배달의 민족, 야놀자, 카카오톡, 페이스북 등이 서비스되기 위해 필요한 “개발” 직군 인 셈이죠. 개발자는 훨씬 더 넓은 개념으로 임베디드 개발, 3D 그래픽 개발, 솔루션 개발, 신호처리, 칩셋 등 다양합니다. 모든 걸 언급하기에는 지면이 부족하므로 무엇을 만드는 개발자가 되고 싶은지 고민해 보는 건 아주 중요합니다. 첫 단추에 따라서 career path가 달라지기니까요. 분야를 크게 바꿀 때는 경력을 인정받지 못하는 경우도 생깁니다.

 

# 요즘 회사들의 채용 방식은?

한 10년 전만 해도 “서류→1차 기술면접→임원면접→처우 협상→입사” 프로세스가 국룰이었는데 요즘은 조금 더 복잡해졌습니다. “서류(제출만 하면 심사 안 함. 즉, 바로 통과)→온라인 코딩 테스트→대면 코딩 인터뷰→기술면접→{임원면접, 컬처 핏 인터뷰}→처우 협상→입사”정도 되겠습니다. 서류를 제출하면 심사를 안 하는 곳도 많아졌습니다. 바로 온라인 코딩 테스트를 진행하는 거죠. 아니 그런 게 어딨어?라고 생각하실 수 있지만 기업 입장에서는 “개발을 잘하는 사람”을 채용하는 게 1차 목표입니다. 그 단계를 통과하면 커뮤니케이션 능력이나 이 사람이 우리 회사와 fit이 맞는지 확인이 필요하죠. 

각설하고 제일 중요한 게 일단 개발을 잘하는가?이고 이걸 검증하는 가장 쉽고 확실한 방법이 코딩 테스트를 보는 겁니다. 사실 좀 더 확실한 방법으로는 같이 머리를 맞대로 일을 해보는 거지만 이건 현실적으로 어려우니까요. 사이드 프로젝트나 커뮤니티를 통해 함께 개발해 본 적이 있는 사람의 회사에 지원하는 경우 면접의 일부 단계가 프리패스되기도 합니다. 이미 확실히 검증된 사람이니까요. 물론 팀 리드급 사람과 일을 해봤어야 가능한 경우가 대부분이긴 하겠죠.

자, 그럼 다시 돌아가서 제일 쉽고 확실하게 검증 가능한 온라인 코딩 테스트를 알아보죠. 온라인 코딩 테스트는 국외로는 릿코드해커 랭크 등이 있고 국내에는 프로그래머스구름백준 등이 있습니다. 이런 플랫폼을 통해 기업이 내준 문제를 기간 내에 푸는 게 미션입니다. 보통 일주일 정도 시간이 주어지고 그 안에서 본인이 시간 될 때 편하게 푸시면 됩니다. 단, 문제를 풀기 시작하면 타이머가 동작하기 때문에 멈출 수 없습니다. 문제는 3문제 정도 출제되고 제한시간은 2시간 정도입니다.

서류를 통과했다면 이런 형식의 메일을 받게 됩니다.

홍길동 님! 축하드립니다. 서류 단계를 통과하셨습니다. 다음 단계는 코딩 테스트입니다. 2월 3일까지 편하신 시간에 진행하시면 됩니다. 코딩 테스트는 해커 랭크를 통해 진행되며 아래 링크로 접속하시면 됩니다. https://example.com/blabla/f-aaa(사용자 식별 고유 링크) 주의: 링크에서 “시작”버튼을 누르시면 멈추실 수 없습니다. 미리 해커 랭크 사이트에 접속하셔서 환경을 체크하시길 당부드립니다.

 

요즘은 코딩 테스트 대신 과제를 내는 곳도 있습니다. 주어진 기능을 수행하는 프로그램을 기간 내에 만드는 겁니다. 하지만, 기업 입장에서 문제가 유출되는 경우 변경이 필요해서 문제를 갱신해줘야 하는 불편함 때문에 과제 프로세스는 쉽게 선택하지 못합니다. 과제를 내는 회사를 만난다면 그들도 많은 고민을 했겠다”라고 생각해 주세요. 반면 코딩 테스트는 온라인 코딩 테스트 플랫폼과 계약하면 플랫폼에서 제공하는 풍성한 문제를 돌려가며 쓸 수 있어서 기업 입장에서는 많이 선호합니다.

위에 언급된 프로세스가 업계 전부를 대변하지는 못합니다. 기업 규모에 따라 코딩 인터뷰 없이 기술면접만 진행하는 곳도 있고 코딩 인터뷰 단계가 더 많은(3번 이상) 곳도 있습니다 기술면접을 다섯 시간 이상 보는 곳도 있고요. 각 회사의 채용 프로세스는 채용 플랫폼을 통해 확인하시면 좋습니다. Job description을 보면 요즘 기술 트렌드 파악하기도 좋으니 훑어보시길. 대표적인 채용 플랫폼으로는 원티드잡플래닛, 사람인, 잡코리아 등이 있습니다.

 

# 취업하는데 자격증이 필요한가요?

특별히 우대받는 자격증이 있냐고 하면 Nope. 하지만 일부 자격증은 열정을 정량 평가할 수 있는 항목인 건 확실합니다. 한글, 워드, 컴활 이런 건 있어도 굳이 이력서에 쓰실 필요 없습니다. Public cloud(AWS, GCP 등)에 다양한 자격증 종류가 있으니 이런 쪽을 알아보세요. 혹자는 “클라우드 자격증은 덤프만 있어도 딴다”라고 하지만 이런 자격증이 한 개, 두 개, 쌓이다 보면 무시 못하죠(덤프가 있어도 취득하기 어려운 자격증도 있습니다). 요즘 백엔드, 인프라 직군(DevOps, SRE) 쪽에서는 kubernetes 자격증(CKA, CKAD 등) 도 의미 있습니다. “저 kube 써봤어요” 보다는 자격증 하나가 열 마디 말을 대신할 수 있거든요. 물론 자격증이 실력을 100% 보증하진 못하지만 최소한의 신뢰를 주는 장치인 건 확실합니다.

아, 전공자라면 정보처리기사도 이야기할 수 있는데 정보처리기사는 요즘 플러스 요소는 아닙니다. 다만 없으면 마이너스되는 그런 자격증이죠.

 

# 회사를 잘 알아보고 선택하는 것도 능력

재무가 탄탄한 회사인지 복지는 괜찮은지 꼰대는 없는지(?) 등 궁금한 게 너무 많죠. 아무리 팀 바이 팀이라고 해도 궁금할 겁니다. 이럴 때 잡플래닛크레딧잡블라인드 등을 통해 현직자 리뷰를 살펴보면 도움이 됩니다. 해당 기업 인사팀에서 좋은 리뷰를 잔뜩 남겨두는 경우도 있고 퇴사자가 나쁜 마음을 먹고 악성 리뷰를 남기는 경우도 있기 때문에 어느 정도 필터링해서 보셔야 합니다. 우리가 음식점 리뷰를 볼 때도 아르바이트생이 남긴 리뷰처럼 보이는 건 자연스럽게 거르는 것처럼요.

 

# 급하다고 아무거나 먹으면 체합니다

오케이. 직군을 정하고 회사도 알아봤으니 이제 어떻게 역량을 키우고 공부하면 될지 알아야겠죠. 요즘 온라인 교육 플랫폼 너무 잘되어 있죠. 솔깃한 것도 많습니다. “6개월 과정만 수료하면 네카라(대한민국을 대표하는 IT기업: 네이버, 카카오, 라인. 일종의 meme입니다) 갈 수 있습니다”와 같은 광고에 절대 속지 마시길 바랍니다. 물론 수강하고 나서 좋은 회사에 가는 사람도 실제로 있긴 합니다만 그런 사람은 애초에 그걸 수강하지 않았어도 독학으로 공부해서 갈 수 있는 역량이 충분한 사람이었을 겁니다. 보통 이런 교육 과정은 가격이 싼 편도 아니라서 “저 정도 광고면 사기 아니냐”라고 이야기가 나올 정도니까요.

조급한 마음에 그런 플랫폼을 유료로 이용하실 생각이면 우선 유튜브부터 훑어보세요. 그쪽에도 충분히 좋은 영상이 많습니다. 그리고 기술 블로그도 찾아서 공부해 보세요. 기업들이 운영하는 기술 블로그도 있으니 참고하면 좋습니다. 기술 블로그 목록은 여기 링크에서 쉽게 얻으실 수 있습니다. 그러고 나서도 유료의 힘이 필요하면 그때 결제하세요.

모두가 좋은 회사에 가고 싶지만 현실은 드라마 좋좋소에 나오는 정승네트워크 같은 중소기업이 더 많을지도 모른다는. “좋좋소”가 그냥 웃자고 만든 드라마라고만 보기는 어려운 것도 현실입니다. 불과 10년 전만 해도 개발은 3D 업종이었으니까요. 여전히 지금도 그런 곳이 아주 많습니다. 피할 수 있다면 잘 피해 가시길 바랍니다. (단순히 규모를 이야기하는 게 아니니 오해 없으시길)

 

# 오픈소스 활동을 추천합니다

아무리 실력이 좋아도 서류 단계를 통과해야 뭘 보여줄 수 있겠죠. 이력서에 “저는 성실한 사람입니다”는 정량평가가 안됩니다. 그래서 평가에 아무 도움이 안 되죠. 이것보다는 “저는 오픈소스 활동을 꾸준히 하고 있습니다. GitHub에서 관리되는 blabla 프로젝트에 contribution을 주기적으로 하고 있습니다” 이런 내용이 있으면 면접관 입장에서 궁금해서 바로 GitHub을 열고 프로젝트를 찾아볼 겁니다. 이렇게 호기심을 자극하고 나를 평가할 근거를 깔아 두는 게 아주 중요합니다. 오픈소스 활동은 더욱이 내가 어떤 식으로 코드를 작성하는지 보여줄 수 있는 자료라서 더욱 매력적인 거죠. 단순히 누군가에게 보여주기 위한 용도가 아니더라도 다른 사람들의 코드를 보고 배우고, 의견을 나누며 기여하는 이 활동을 통해 빠르게 성장할 수 있을 겁니다.

 

# 자기 PR의 시대

가만히 있으면 아무도 알아주지 않습니다. 이제 개발자를 막 시작하려고 한다면 자기 PR도 할 줄 알아야 합니다. 아니, 이건 이제 막 사회생활을 시작하려는 사람뿐만 아니라 경력이 있는 사람들에게 해당되는 부분이네요. 꼭 개발자뿐만 아니라 어느 직군이든 공통으로요. 링크드인은 그런 면에서 아주 훌륭한 도구입니다. 본인의 커리어를 하나씩 채워나가고 글을 쓰고 사람들과 소통해 보세요. 활동에 따라 기업 인하우스 리크루터에게 콜드 메일(“당신에게 흥미가 있어요. 우리 회사 지원해보지 않겠어요?”같은)을 받기도 합니다.

자기 PR은 아래 커뮤니티 활동을 통해서도 이어집니다.

 

# 커뮤니티에서 키워드를 얻으세요

커뮤니티 활동을 하는 것도 아주 좋습니다. 커뮤니티 행사에 가서 최신 기술 트렌드를 파악할 수도 있고 네트워킹을 통해 인맥을 쌓을 수도 있습니다. 기술을 제공하는 프로바이더가 직접 주최하는 행사도 있지만 그 기술을 사용하는 유저들이 주최하는 행사도 많습니다. 페스타밋업 등에서 개발자 행사를 찾아보세요. 관심 커뮤니티를 팔로우하면 주기적으로 행사 소식을 받을 수 있습니다.

행사에서 키워드를 얻었다면 본인의 공간에서 관련 기술로 딥 다이브 해보세요. 키워드를 알았으니 절반은 한 겁니다. 기술을 파헤쳤으면 그걸 블로그 등으로 정리해서 주변이 공유하세요. 운이 좋다면 전문가로부터 내가 공부한 내용을 피드백받을 수도 있습니다. 그게 아니라면 누군가에게 소중한 글이 될 수도 있고요. 기회가 되면 그걸로 발표를 신청해 보세요. 커뮤니티에 다시 돌려주는 거죠. 이렇게 배우고 성장하고 공유함으로써 커뮤니티는 성장합니다. 그 성장에 기여하게 되는 겁니다.

요즘은 Facebook에서 기술을 주제로 많은 그룹이 활성화되어 있습니다. 예를 들면 spring korea 그룹python korea 그룹AWS 사용자 그룹GCP 사용자 그룹 등이 해당되겠네요. 관심 있는 그룹을 찾아보세요.

 

# 이력서 작성 꿀팁

TBU

 

# 커피챗도 좋습니다

관심 있는 회사에 정보가 필요하면 용기를 내세요. 커뮤니티, SNS 등을 통해 그 회사의 개발자에게 연락을 해서 커피챗[2]을 요청해 보세요. 그리고 대화를 통해 회사 정보도 얻고 업계 선배의 이야기에도 귀를 기울여보세요. 어쩌면 좋은 기회로 인맥을 쌓게 될지도 모릅니다. 많은 리크루터가 커피챗을 열고 있습니다. 또한 이걸 서비스화한 회사도 있습니다. 커피챗이라는 서비스도 있지만 유료라서 호불호가 있지만 둘러보시고 필요하면 이용하시는 것도 방법입니다.

 

# Who are you?

10+년차 개발자로 국내 주요 뱅킹, 농협, 행안부 등에 납품되는 방화벽 장비의 로그를 처리하는 업무를 시작으로 숙박 플랫폼의 푸시, 알림톡 등을 개발했으며 오디오 플랫폼의 채팅서버와 머신러닝 모델을 개발했습니다. 그리고 현재는 광고 데이터를 수집/가공/적재하는 Data Platform 팀의 Tech Lead로 일을 하고 있습니다. 컨테이너와 마이크로서비스, 서버리스에 관심이 많습니다. 한편, 커뮤니티에 기여하고자 Google 기술 전문가인 Google Developer Expert로 활동하고 있습니다. 

 

# 마치며

위에서 언급한 것들을 처음부터 다 (잘) 준비하는 건 사실 말이 안 됩니다. 굳이 이렇게 글로 정리한 건 이 글을 보는 분께 키워드를 드리고자 하는 목적이었습니다. 단순히 키워드만 나열하면 그 의미를 알기 어려우니 최소한의 단락으로 풀어서 정리한 거라고 보시면 됩니다. 관심 있는 키워드에 대해서는 “구글”이나 “유튜브”에 검색해 보시길 바랍니다. 다른 검색엔진보다 우수한 결과를 뽑아줄 겁니다.

혹시 글에 모호한 게 있어서 도움이 필요하면 연락 주세요. 저는 커뮤니티를 통해 성장하는 걸 좋아하는 한 명의 개발자로 지식 나눔에도 관심이 많습니다.

 


[1] : 얼마 전까지는 호황이 맞았습니다만, 현재는 아닙니다. 세계적인 경기침체 여파로 IT 업계에도 찬 바람이 불고 있습니다. 세계적인 빅테크 기업의 대명사 MAANG(메타[구 페이스북], 아마존, 애플, 넷플릭스, 구글) 일부를 포함해서 트위터, 스포티파이 등에서도 해고 바람이 불고 있으니까요. 국내 유망한 스타트업도 경기침체 여파를 이기지 못하고 도산하는 곳이 있습니다.

[2] : 커피 한 잔 마시면서 대화하는 자리입니다. 구직자 입장에서는 회사에 궁금한 점을 편히 물어볼 수 있고, 회사 입장에서는 대화를 하면서 구직자의 역량을 살짝 평가하기도 합니다. 서로 윈윈 하는 자리로 보면 되겠네요.

 

댓글
최근에 올라온 글
최근에 달린 댓글
글 보관함
Total
Today
Yesterday