profile image

L o a d i n g . . .

728x90

최근 코드 스테이츠와 캐치 라이브에서 멘토링을 진행한 경험이 있었는데요, 이번 포스팅에서 취업 준비생들에게 꼭 필요한 정보와 흔히들 하는 실수에 대해 말씀드리려고 합니다. 

 

코드스테이츠와 캐치 라이브 멘토링

https://www.catch.co.kr/CatchClass/Live/View/5605

시작 

개발자가 되려고 막 마음먹은 단계에서는 어떤 걸 해야 할까요? 최소한 개발이 적성에 맞는지 확인해봐야 한다고 생각합니다. 물론 개발이 적성에 맞지 않아도 개발자가 되는 것은 가능하지만 개발자가 되고 나서 과연 업무가 즐거울지는 의문입니다. 제가 과연 개발이 제 적성에 맞는지 확인했던 방법은 다양한 개발 분야를 얕게나마 접해보는 것이었습니다. 

  • front-end, back-end, embedded, artifical intelligence 체험해보기
  • 자료구조, 알고리즘 문제 풀어보기 
  • C/C++, Java, JavaScript, Python 등 다양한 언어 배워보기 
  • freecodecamp 등 실습 사이트에서 실습 진행해보기 

위에서 말씀드린 대로 다양한 분야를 학습해보면서 제가 개발을 즐기는 것을  파악할 수 있었습니다. 문제를 해결하는 과정에서 느꼈던 쾌감과 배우며 성장하는 즐거움이 저를 개발자의 길로 이끌었습니다. 

 

학습 경로 

개발이 적성에 어느 정도 맞는지 확인을 했으면 그다음으로 어떻게 학습을 해야 하는지 궁금하실 겁니다. 제가 소개드릴 학습 방법은 제게 최적의 학습 방법이기에 다른 분들께는 최적의 학습 방법이 아닐 수 있습니다. 

자료구조와 알고리즘

첫 번째로 자료구조와 알고리즘에 대한 학습 방법입니다. 이는 코딩 테스트와 직결되기 때문에 매우 중요합니다. 자료구조와 알고리즘 학습은 마치 수학을 학습하는 것 과 유사합니다. 개념만 익히는 것으로 끝나면 안 되고 최대한 다양한 문제와 심화 문제를 풀어가며 실력을 향상시켜야 합니다. 저는 다음 단계로 자료구조와 알고리즘에 대해 학습을 진행하였습니다. 

  1. 유형별로 문제를 최대한 다양하게 풀어보기
  2. 문제만 보고도 유형을 파악할 수 있으면 난이도를 높여보기 
  3. 코딩 콘테스트 또는 실전 코딩 테스트를 통해 실전 감각 끌어올리기 

위 단계를 진행하면서 중요한 점은 풀리지 않는 문제를 가지고 너무 오래 고민하지 않는 것입니다. 제가 자료구조와 알고리즘을 학습하면서 했던 실수 중 하나가 풀리지 않는 문제를 2 ~ 3시간 이상 붙잡고 있는 것이었습니다. 이는 효율도 좋지 않을뿐더러 다른 문제를 풀거나 공부할 수 있는 시간을 뺏기는 것이기에 권고하지 않습니다. 차라리 30분 ~ 1시간 정도 고민해보시고 그래도 풀리지 않으면 정답을 참고하는 걸 추천드립니다. 단!! 해당 문제는 1주일 또는 1달 뒤에 돌아와서 다시 풀어볼 수 있도록 잘 표시하는 게 중요합니다. 

제가 주로 사용했던 자료구조, 알고리즘 학습 사이트입니다. 

  • leetcode: 전 세계의 개발자들이 취업 준비와 이직을 위해 사용하는 자료구조 및 알고리즘 학습 사이트입니다. 문제가 난이도, 유형 및 회사 별로 분류되고 주기적인 코딩 콘테스트가 있기 때문에 학습 능률이 높은 사이트입니다. 
  • 프로그래머스: 국내의 여러 IT 기업에서 인턴쉽 및 공채 채용을 위해 활용하는 사이트입니다. 자료구조와 알고리즘 외에도 SQL 학습이 가능합니다. 

그 외에도 다양한 사이트가 있는데요, 수학 문제를 풀 때 하나의 자습서만 보는 게 아닌 것처럼 자료구조와 알고리즘을 공부할 때도 다양한 사이트를 참조하면 도움이 많이 됩니다(다양한 유형의 문제를 다양한 사이트에서 풀어볼 수 있기 때문입니다). 

leetcode의 문제(좌), 코딩 콘테스트(우)
프로그래머스 채용 챌린지

Computer Science (CS)

두 번째로 학습해야 하는 것은 컴퓨터 공학적 지식입니다. 하드웨어, 운영체제, 데이터베이스와 네트워크 등 광범위하게 학습해야 합니다.  CS 지식은 모든 기술의 근간이 되기 때문에 중요하기도 하지만 다른 개발자와의 대화를 하기 위해서는 꼭 필요한 지식입니다. 또한 신입 면접에서 등장하기 때문에 매우 중요합니다. 

제는 위에서 말씀드린 지식을 기간을 정해서 학습하는게 어려울 거라 판단해서 자투리 시간을 활용했습니다. 대부분이 동영상 강의였기 때문에 식사시간, 이동하는 시간과 산책하는 시간 등을 활용해서 CS 강의를 여러 번 반복해서 시청했습니다. 제가 활용했거나 추천드릴 사이트 다음과 같습니다. 

학원과 다양한 프로그램 

코딩 학습을 할 수 있는 다양한 유형의 학원과 프로그램을 하나하나 소개드리고자 합니다. 

국비지원 

첫 번째로 국가에서 지원하는 국비지원 학원입니다. 국가에서 교육비를 지원하기 때문에 돈을 거의 지불하지 않고 학습을 할 수 있습니다. 국비지원 학원은 학원별로 강사의 수준이나 질 그리고 학생 수준이 천차만별입니다. 따라서 국비지원을 선택하시기 전에 해당 학원을 수료한 학생에게 정보를 얻거나 최소한 커뮤니티를 통해 해당 학원에 대한 정보를 얻는 것을 추천드립니다. 

부트캠프 

국비지원과 달리 고액의 강의료를 학생이 직접 지불합니다. 강의료를 직접 지불하다 보니 수강생들의 열정이나 의지가 높습니다. 또한 국비지원과 비교했을 때 강사의 수준이나 강의의 질이 좋을 확률이 높습니다. 부트캠프에서는 취업을 위한 종합 솔루션을 제공하는데요, CS 지식부터 자료구조와 알고리즘을 학습하고 현업에서 사용하는 다양한 기술을 배웁니다. 또한 해당 코스 마지막에는 수강생들끼리 협업 프로젝트를 진행하면서 포트폴리오를 구성하기도 합니다. 

기업 지원 코스 

기업에서도 다양한 학습 코스를 지원합니다. 몇몇 코스에서는 매달 50 ~ 100만 원씩 수강생들에게 지원을 하기도 합니다. 이런 코스는 보통 경쟁률이 치열하고 수강생들의 수준도 매우 높기 때문에 전체적인 수준이 매우 높습니다. 몇몇 코스는 수료 이후 채용 전환으로 이어지기도 합니다. 

인턴쉽 

제가 했던 방법으로 기업에서 진행하는 인턴쉽 프로그램입니다. 합격만 할 수 있다면 가장 추천드리는 방법으로 최근에는 채용 전환형 인턴쉽이 많기 때문에 프로젝트 경험도 생기고 취업 기회까지 생기는 좋은 방법입니다. 

프로그래머스(좌)와 네이버 채용 사이트(우)의 인턴쉽 모집 공고

 

취업 준비 

기회

학습을 하면서 취업을 위한 준비도 함께 병행하는걸 추천드립니다. 제가 취업 기회를 잡기 위해서 모니터링한 방법은 다음과 같습니다. 

  • 프로그래머스 채용 공고 모니터링 
  • 관심 회사의 채용 사이트 채용 공고 모니터링 
  • IT 커뮤니티(OKKY) 모니터링 

위 사이트를 주기적으로 모니터링하면 어떤 공고가 나오고 해당 공고에서 어떤 인재를 원하는지 확인할 수 있습니다. 이를 통해 학습의 방향을 정할 수 있었습니다. 

 

저는 취업 준비를 하면서 다양한 스터디를 진행했었는데요, 스터디의 대표적인 장점은 다음과 같습니다. 

  • 높은 학습 효율성. 스터디 내용을 발표하는 방식처럼 심도 있게 학습하도록 어느 정도의 강제성을 부여하면 학습 효율성을 높일 수 있습니다. 
  • 중간에 포기할 확률이 낮아집니다. 
  • 다양한 사람을 만날 수 있습니다(현직자, 전공자 등) 

저는 OKKY의 모임 & 스터디에서 스터디를 자주 모집했었습니다. 

 

실수 

취업을 준비하시는 분들이 쉽게 할 수 있는 실수에 대해 말씀드리고자 합니다. 

  • 블로그: 블로그를 개인 일기장처럼 활용하는 것입니다. 물론 개인 일기장으로 사용해도 문제가 되지는 않습니다. 하지만 입사 지원서에 해당 블로그 주소를 넣는 것은 추천드리지 않습니다. 비슷한 유형의 블로그가 엄청 많기도 하고 해당 블로그를 운영했다고 해서 절대 플러스 점수가 주어지지 않기 때문입니다. 
  • Github 잔디 심기: 몇몇 분들은 1 일 1 커밋을 통해 github에 초록 빽빽한 잔디를 심으려고 노력하시는 분들이 있습니다. 좋은 자세이기는 하지만 만약 저라면 1 일 1 커밋을 고수하기보다는 1일 1 지식 습관을 길러서 하루에 하나의 지식은 내가 확실히 배워 가겠다는 자세가 좋지 않을까 생각합니다. 
  • Trendy 한 기술에 대한 집착: 특히 IT 분야는 신기술이 빠르게 등장합니다. 이 기술을 모두 알면 좋겠지만 현업에서는 신기술이 나온다고 해서 바로 도입하는 것도 아니고 심지어는 도입하지 않는 경우가 태반입니다. 따라서 취업 준비생이라면 신기술에 집중하기보다는 현업에서 사용하는 기술과 그 근간이 되는 원리를 이해하는 게 더 중요합니다. 
  • 코딩 테스트 말고 과제 전형만 준비: 몇몇 분들은 코딩 테스트를 준비하는 시간에 차리라 과제 전형만을 준비해서 취업을 하고자 합니다. 요즘은 대다수의 기업이나 스타트업에서는 최소한의 코딩 테스트를 거치기 때문에 코딩 테스트는 언젠가 거쳐야 하는 관문이라고 생각합니다. 코딩 테스트를 준비하면 지원 가능한 회사의 수도 증가하므로 저는 꼭 코딩 테스트 준비하는 것을 권고드립니다(게다가 과제 전형만 하루 종일 준비할 수는 없으니까요 ^^...) 

 

회고 

1년 정도 개발자로 일한 지금이 돼서야 이해하게 된 것들과 "아 내가 그때 어떻게 했으면 더 좋았겠구나"라고 느끼는 것들을 공유해보고자 합니다. 

개발자 추천 

저는 다음과 같은 분들이라면 개발자를 추천드리고 싶습니다. 

  • 기술에 관심이 있는 사람 
  • 문제를 직면했을 때 회피하지 않고 해결하려는 의지가 있는 사람 
  • 새로운 것을 공부하는 게 즐거운 사람 

다음과 같은 분들께는 개발자를 추천드리지 않습니다. 

  • 한 번 배운 기술만을 가지고 평생 쓰고자 하는 사람 
  • 학습이 즐겁지 않은 사람 

학습 방법 

저는 국비지원 또는 부트 캠프 등의 학원의 도움을 받지 못한 게 참 아쉬웠습니다. 만약 목표가 단기간 취업이라면 취업 종합 솔루션을 제공하는 학원을 추천드립니다. 

학습을 하실 때 완벽한 이해를 위해서 너무 오랜 시간을 사용하는 걸 피할 것을 추천드립니다. 학습하는 사람의 경험과 지식의 깊이에 따라 새로 배우는 지식에 대한 이해의 정도가 다르기 때문입니다. 처음 배우는 입장에서 완벽하게 이해하는 게 불가능할 확률이 높기 때문에 일단 이러이러한 게 있구나 ~ 정도로 파악하시고 나중에 돌아와서 복습하는 것을 추천드립니다. 

취업 

현재 경기 상황 악화로 인해 채용 인원이 줄어들고 수많은 학원에서 신입 개발자들이 양성되면서 취업 경쟁률이 가파르게 상승하고 있습니다. 따라서 취업 전략도 잘 가져가는 게 좋은데요, 만약 처음부터 목표한 기업에 들어가지 못하더라도 눈을 낮춰서 취업을 하는 것을 추천드립니다. 제 주변에 이 방법을 활용해 눈을 낮춰 빠르게 취업을 하시고 단기간에 성장해서 중고 신입으로 목표한 기업에 이직하시는 분들이 계십니다. 따라서 첫 회사가 만족스럽지 않더라도 빠르게 취업하고 나서 꾸준히 학습하고 성장해서 목표한 기업으로 이직하는 게 좋지 않을까라는 생각입니다. 

 

마무리 

최근 3 개월 정도 멘토링을 진행하면서 정말 다양한 사람을 만났습니다. 저와 비슷한 비전공자부터 다른 분야에서 일을 하다 오신 분들까지 정말 다양한 분들께서 개발자가 되기 위해 고군분투하십니다. 그분들을 멘토링을 하면서 제 생각도 많이 정리가 됐고 배울 점도 많았습니다. 이 짧은 글이 개발자를 준비하시는 분들께 조금이나마 도움이 됐으면 좋겠습니다. 

728x90
복사했습니다!