2023년 하반기 공개 채용 시즌에 취업을 도전 하였고 재도전 없이 한 번에 취업을 성공하게 된 입장에서 누군가에게 조금이라도 도움이 되었으면 좋겠다는 생각으로 글을 작성합니다. 지극히 개인적인 느낀점이므로 이 사람을 이렇게 생각하는구나 정도로만 생각하시면 좋을 듯 합니다.
취업 준비를 시작하면서 걱정만 앞섰던 것 같고 뭐부터 해야 할 지 모르겠어서 다른 사람들의 취업 후기를 참고하고자 열심히 구글링했었는데, 개인적으로 아쉬운 느낌이 많이 들었던 것 같습니다. 물론 자신의 정보를 드러내면서 정보를 공유하는 일이 쉽지만은 않지만 조금 더 자세하고 상세한 정보가 필요하단 생각이 많이 들었습니다.
그래서 저는 제 모든 과정(기억나는 과정만)을 남겨 볼 생각이고 조금이라도 더 도움이 되어서 감이라도 잡아가셨으면 합니다. 조금 개인적인 정보도 포함 될 수 있으니 필요한 정보만 가져가셔요.
먼저 자신이 갖고 있는 역량이 모두 다르기 때문에 저의 간단한 소개를 하자면,
(자기소개서에 작성한 내용만 언급하겠습니다)
- 서울 중위권(동건홍) 4년제 대학교 재학 중(2024년 2월 졸업 예정)
- 주전공: 정보통신공학과 , 복수전공 : 데이터사이언스 소프트웨어
- 전체 학점 : 3.71 / 전공학점 : 3.85
- 영어 성적 : OPIc IM2
- 자격증 : 정보처리기사, SQLD, ADsP, 네트워크 관리사 2급
- 프로젝트 경험 : 자기소개서에는 교내 프로젝트 2개 작성
- 수상 경험 : 교내 경진대회 2회 수상 (장려상, 은상) 작성, 교외 수상경험 : x
- 대외 활동 : 오픈소스 컨트리뷰션 [MySQL], 프리온보딩 백엔드 챌린지 [Java] 2개 작성
- 인턴 경험 : x
- 주로 Spring 프레임워크를 공부하였고, 프로젝트 모두 Spring으로 진행하였기 때문에 대부분 백엔드 직무로 지원
본인 약점 찾기
가장 중요한 건 본인이 생각하기에 어떤 점이 다른 지원자에 비해 부족한 것 같은지 찾아야 한다고 생각합니다. 저는 IT 개발 직무로 취업을 준비하는 데 중요하다고 생각하는 [개발 관련 대외 활동, 인턴 경험] 모두 전무하기에 말 그대로 쌩신입이었고 다른 지원자에 비해 해당 부분이 부족하다고 생각하였습니다. 대학교 재학 기간 중 대부분의 시간 모두 아르바이트를 했었기에 다른 일들을 하기에는 바쁠 것 같았고, 역량도 부족하여 지원해도 모두 탈락했었습니다.
2023년 1학기부터 본격적으로 취업을 준비하기 시작하였고, 아르바이트도 5월 즈음에 그만두었습니다. 저는 위에서 언급한 제가 생각하는 저의 약점을 보완하기 위해 자격증 취득에 노력하였습니다. 제가 취득한 자격증들 모두 전공자에게는 어려운 자격증은 아니라고 생각합니다. 길어야 한 달, 짧으면 1주일만 집중해서 투자하면 취득 할 수 있다고 생각합니다.(정처기 제외, 이건 제대로 공부 할 필요 있긴 함)
그래서 2023년 5월[SQLD], 7월[네트워크 관리사], 9월[정보처리기사, ADsP] 모두 한 번에 취득하였습니다. 4개 모두 6개월 안에 취득하였기 때문에 자신의 약점이 저와 비슷한 것 같다 라고 생각하면 해볼 만 하다고 생각합니다. 어려운 내용은 아니지만 자신이 꾸준히 공부하고 있고 성실하다는 인식을 주기에 충분합니다. 또한, 있다고 강점은 아니지만 없으면 약점이 될 수는 있습니다. 면접에서 다른 지원자 분들이 자격증이 하나도 없을 경우 왜 취득 안했는지 물어보시는 면접관분들도 계시니까요. 그럼 본인에게는 더욱 시선이 쏠리게 됩니다.
이 외에도 추천드리는 자격증은
- AWS SAA : 학생이 평소에 하면서 따기에는 어려움. 주변에 1명 있는데 똑똑함. 서류 우대인 경우 많음
- 리눅스마스터 1급 : 금융권에서 우대하는 것 같고, 리눅스 공부는 언젠가 꼭 해야하기에 좋은 것 같음
- DAsP : SQLD, ADsP와 친구인 애인데 본인도 한 번 공부해보려다가 중간고사 시즌이랑 겹쳐서 떨어졌었음, 시간 투자하면 충분히 취득 할 수 있는 난이도이기 때문에 추천
- OCP 등등
물론, 취업에 닥쳐서 자격증 취득하는 건 무리라고 생각합니다. (그 정도로 중요하지도 않고)
서류 내기 전에 모두 취득한 상태가 가능하다고 가정하고 추천드립니다. 개인적인 의견이니 무시하셔도 됩니다.
그리고 개발 관련 활동 또한 전무하고 프로젝트 참여 경험도 적기 때문에 단순히 Spring만 해봤다고 서류 들이밀면 읽지도 않을 것 같다고 생각하였습니다. 그래서 교내 졸업 프로젝트로 진행하는 캡스톤 디자인에서 Apache Kafka라는 기술을 사용해서 프로젝트를 진행했었습니다. Spring으로 백엔드를 개발하고 데이터 동기화를 API가 아닌 Kafka로 해보면서 한 줄이라도 더 적기 위함이었죠. 실제로 자기소개서에 작성한 직무 관련 경험은 대부분 해당 프로젝트만 작성하였습니다.
요약하자면,
- 대외 활동 및 인턴 경험 전무
- 자격증 취득으로 해당 약점 가리고자 노력
- Spring으로만 프로젝트 해봤다고 자기소개서 쓰면 안읽을 것 같아서 또 다른 기술을 써서 프로젝트를 진행하려고 노력
서류 지원
저 정도 상태로 그냥 서류 지원하였습니다. 대략 30곳 지원하였고 많다고 생각하실 수 있겠지만 처음 도전하는 취업이었기 때문에 백엔드 직무가 아니어도 IT직무면 그냥 다 지원하였습니다. (예를 들어, 정보보호/클라우드/데이터 엔지니어/디지털 등등)
저는 제 스펙이 다른 지원자에 비해 잘난 것도 없고 오히려 부족하다고 생각하였습니다. 개인적으로 열심히 살았다고 생각하지만 서류에 작성하는 건 또 다른 일이니 그런 생각이 들었습니다.
[ 서류 탈락 ]
- SKT
- NC소프트
- 신한은행 [타 직무 지원]
- 키움증권
- 한국투자증권
- 현대차증권
- KT
- 신세계아이앤씨
- LG U+ [타 직무 지원]
- 현대모비스 [타 직무 지원]
- LG 헬로비전 [타 직무 지원]
- 현대엔지니어링 [타 직무 지원]
[ 서류 합격 ]
- 현대 자동차 [타 직무 지원]
- 새마을금고중앙회
- 신한카드
- 두산 디지털이노베이션 [타 직무 지원]
- 삼성 SDS
- 현대 IT&E
- 포스코DX
- LG CNS
- 롯데 정보통신
- LG전자
- 한화시스템 ICT
- CJ올리브네트웍스
- SK C&C
- 신한투자증권
- 롯데카드
- NH투자증권
- 현대캐피탈
- 우리카드
- 농협중앙회
제 생각보다는 결과가 좋았습니다. 저는 당연히 내년 상반기까지 볼 생각이었고 이번 하반기에는 서류 합격률을 보면서 제가 어느 정도 수준인지 확인 받고 보완하려는 생각을 하고 있었습니다. 근데 서류 결과가 생각보다 좋았고 개인적으로 코딩테스트 공부도 꾸준히 했었기 때문에 희망이 조금(?) 보였습니다.
제 생각에 서류 작성은,
- 본인이 한 내용들을 다른 사람들한테 설명 할 수 있어야 하는 수준인 내용만 작성
- 자기소개서이므로 본인을 뽐내려 하는 것보다는 자신을 표현하는 것에 집중하고 녹여내야 함
- 어차피 나 말고 뽑을 사람 널렸음 겸손한 자세로 합류하고 싶다는 의지를 어느 정도 표현하는 건 중요함
- 기술에만 집중 하는 건 결코 좋지 않다. 신입 지원이라는 것을 명심
코딩 테스트 or 적성 검사
서류를 합격하게 되면 대부분 코딩테스트 또는 적성 검사를 진행하게 됩니다. 저는 코딩 테스트 공부를 꾸준히 공부하다가 상반기에는 바빠서 하지 못했고 7-8월 방학 기간 때 집중해서 공부했었습니다.
모든 알고리즘을 공부하고 문제를 풀어보면 너무나도 좋겠지만, 사실 그럴 힘도 없고 시간도 없습니다.
중요한 유형들을 완벽하게 공부하는 것도 불가능하기 때문에 감을 잃지 않고 꾸준히 하는 게 중요하다고 생각합니다.
- 구현 (시뮬레이션)
- 그래프 (BFS/DFS)
- 완전탐색 (조합)
- 동적계획법 (DP)
- 그리디
위 5가지 유형은 기본으로 인지하고 코딩 테스트에 임해야 한다고 생각합니다. 추가적으로
- 이분 탐색 / 투 포인터
- 최단 거리
- 최소 스패닝 트리
- 트리
이 정도까지 공부해야 한다고 생각합니다. 모두 이번 코딩테스트에서 봤던 유형들만 적었습니다.
[코딩 테스트/적성 탈락]
- 현대 자동차 [데이터 엔지니어 직무]
- 2시간 2문제, 난이도 [하]
- 반례 생각 안하고 쉽다고 빨리 나왔습니다. 시험 종료하고 머리에서 반례 떠올라서 하루 종일 멘탈 나갔었습니다.
- 유형
- 구현
- 투 포인터
- 두산 디지털이노베이션 [클라우드 엔지니어 직무]
- 코딩 테스트가 아니라 DCAT라는 두산 적성 시험이었습니다.
- 서류 합격했으나 클라우드 엔지니어 직무라서 시험에 응시하지 않았습니다.
- LG CNS [DX Engineer, Backend 직무]
- 3문제 중 1문제만 풀이하였습니다.
- 유형
- 구현이었지만 최적화가 요구되는 구현 문제라고 생각합니다.
- 롯데 정보통신 [운영정보시스템 직무]
- 2문제 알고리즘, 1문제 SQL문제입니다.
- 개인적으로 3솔이라고 생각하였는데 탈락한 것을 보아 숨겨진 테스트 케이스를 맞추지 못했던 것 같습니다.
- 유형
- 1) 그리디
- 2) DP
- 저는 모두 DP 코드로 작성하였습니다.
- NH 투자증권 [IT직무]
- 적성 검사 및 코딩 테스트 모두 진행합니다.
- 당시 아무 생각이 없었고 그러면 안되지만 적성 검사 하기가 싫어서 대충 풀었습니다. 100분 시간 중 1시간만 하고 조기 퇴실
- 코딩테스트 알고리즘 3문제 SQL 1문제
- 알고리즘 2문제 해결, SQL 1문제 해결이라고 생각하나 탈락해서 잘 모르겠습니다.
- 유형
- 구현
- Union Find
- 그래프
- 신한 투자증권 [IT 직무]
- 코딩 테스트와 AI 역검을 진행합니다.
- 신한카드 10시간 면접 후 AI 역검을 응시했는데 도저히 집중이 되지 않아서 중간에 거의 포기했습니다.
- 꼭 시간 여유 있을 때 풀 집중해서 응시하세요.
- 코딩테스트 유형이 조금 신기합니다. 잡다에서 진행하는데 3문제라고 하였으나
- 정확성 문제 1개
- 정확성/효율성 문제 1개
- 단계별로 코드 작성하기 [총 5단계]
- 이런 느낌이라 7문제 같습니다. 저는 정확성/정확+효율/단계별로 코드 작성하기 3단계까지 해결하였습니다.
- 코딩 테스트는 나쁘지 않았던 것 같은데 AI 역검을 너무 못해서 할 말이 없습니다.
- 현대캐피탈 [백엔드 직무]
- 다른 기업과 일정이 겹쳐 응시하지 않았습니다.
- 롯데카드 [Backend 직무]
- 다른 기업과 일정이 겹쳐 응시하지 않았습니다.
- 포스코DX [IT 직무]
- 다른 기업에 최종 합격하여 응시하지 않았습니다.
- 우리카드 [IT 직무]
- 적성검사와 코딩테스트(손코딩)을 오프라인으로 진행한다고 하여 응시하지 않았습니다.
- 가기 귀찮아서가 아니라 손코딩이라서 가기가 싫어졌습니다.
- 한화시스템 [SW 직무]
- 시간 착각해서 응시하지 못했습니다.
- 개인적으로 가고 싶었던 기업이라 하늘이 무너져내리는 것 같았습니다. 꼭 코딩 테스트 시작 전 접속 시간 확인하셔요
[ 코딩테스트 및 적성 검사 합격]
- 새마을금고중앙회
- 1시간에 3문제 [C/C++/JAVA]만 지원
- 유형
- 정렬
- 완전탐색
- 조합
- 전형 중 코딩 테스트 과정 중요합니다. 뒤 면접 내용에서 설명하겠습니다.
- 신한카드
- 70분에 알고리즘 3문제, SQL 1문제
- SQL은 쉬웠습니다.
- 알고리즘 3개 중 2개는 정말 쉬웠습니다. 2개 합쳐서 15분도 안걸렸던 것 같습니다.
- 알고리즘 1문제가 어려웠습니다. 조합을 사용하고 최적화를 위해 투 포인터까지 적용해야 했다고 생각합니다. 테스트케이스는 모두 맞추었지만 성공했다고는 생각하지 않습니다.
- 유형
- 정렬
- 조합
- 조합 + 투 포인터 (제 생각엔 조합 2번 돌려야함, C++의 next_permutation())
- 삼성 SDS
- 너무 유명한 삼성 코딩테스트
- 1문제는 A형 BFS 기반 빡구현, 1문제는 쉬운 B형 최적화 자료구조 문제
- 4시간 동안 1번 하나만 풀었습니다.
- (중요) 웹 환경에서 코딩테스트 진행하는데 웹에서 지원하는 C++버전과 코드 작성 할 수 있도록 지원해주는 Visual Studio 버전이 다릅니다. Visual Studio에서 예제 모두 맞게 돌아가서 제출하려고 웹 에디터에 코드 옮겼는데 컴파일 오류 생겼습니다. 감독관에게 즉시 상황 설명(웹 에디터와 Visual Studio C++버전 차이로 인한 컴파일 오류)한 후 도움 요청 했으나 안도와줍니다. 스스로 컴파일 오류 찾아야 합니다. 컴파일 오류 찾고 제출하느라 종료 10초 전 쯤 제출했고 제대로 제출됐는지 확인도 못했었습니다.
제 컴파일 오류는,
bool cmp(pair<int, int> &lhs, pair<int, int> &rhs){
...
}
이러한 코드를 모두
bool cmp(pair<int, int> lhs, pair<int, int> rhs){
...
}
이런 식으로 함수 매개변수에 주소 참조 값으로 넘겨주는 방법을 모두 값 복사해서 넘겨주는 방법으로 고쳤더니 해결되었습니다.
그 외에도 vector 선언도 띄어쓰기 해주고 별 짓 다 했었는데 사실 뭐가 문제였는지는 아직 정확히 모르겠습니다. 근데 마지막에 위에 작성한 것처럼 주소 참조값이 아닌 값 복사로 매개변수 넘겨주었더니 컴파일 오류가 발생하지 않았었으니 위 문제가 제일 컸던 것 같습니다.
시간 얼마 안남았는데 컴파일 오류 발생하면 원래 알고 있던 지식도 당황해서 안떠오릅니다. 버전 차이 확인하고 가시면 좋을 것 같아요.
- 현대 IT&E
- 2문제 알고리즘, 1문제 SQL
- 알고리즘 1문제, SQL 1문제 풀이하였으나 코딩 테스트의 중요성이 다른 기업보다는 덜 한 것 같습니다.
- 한 문제만 풀어도 면접 오신 분들 계십니다.
- LG전자
- 유일하게 구현이 아닌 알고리즘 유형을 보는 듯한 코딩 테스트 같았습니다.
- 3문제였고 3개 모두 풀었습니다.
- 구현
- Union Find
- 최소 신장 트리
- 였던 것 같은데, 기록을 안해놔서 정확히 기억이 안나네요,, 2문제가 알고리즘을 적용해서 풀어야 정답인듯한 문제였습니다.
- CJ올리브네트웍스
- 생각(?)보다는 어려웠습니다.
- 기록을 안해놔서 기억이 안나지만(알고리즘 3개/SQL 1개였던 것 같은데) 테케 기준 모두 풀었습니다.
- SK C&C
- 알고리즘 3개 / SQL 1개였습니다.
- 테케 기준 모두 통과했으나 후에 오픈채팅방에서 확인해보니 SQL은 잘못풀어서 SQL은 무조건 틀렸었습니다.
- 대충 2솔 예상합니다.
대부분의 코딩테스트가 2시간이었고 알고리즘 3개 또는 알고리즘 3개 + SQL 1개 유형입니다.
구현 위주가 많았고 꾸준히 공부한다면 한 문제도 못 풀 난이도는 아니라고 생각합니다.
개인적으로 [주어진 시간, 문제, 난이도] 모두 생각하면
삼성 SDS
신한카드 / LG전자
SK C&C / 새마을금고중앙회 / LG CNS
신한 투자증권 / CJ 올리브네트웍스 / NH 투자증권
현대 IT&E / 롯데정보통신
현대자동차
라고 생각됩니다. 이건 너무 주관적이라 참고만 하십셔.
그리고 초반에는 긴장하고 치면서 개인적으로 풀 수 있었다고 생각하는 것들도 못풀고 그랬는데,
시간 좀 지나고 몇 번 시험 보니깐 긴장도 안하고 그러니깐 합격률이 실제로 더 높았습니다.
긴장 하면 더 못봅니다. 그건 확실 충분히 실전과 같은 연습 많이 경험하시고 코딩 테스트 응시하면 훨씬 더 좋은 결과 있을 겁니다.
- 2시간 시간 재고 3-4문제 풀이하는 거 연습 많이 하세요 도움 됩니다 분명
- 프로그래머스 기준 Lv.2 2문제 Lv.3 1문제 / SQL Lv.2-3 1개 추천
- 백준 기준 실버2~4 난이도 2개 / 골드4,5 난이도 2개 추천
- 물론 알고리즘 유형은 보고 풀면 안됩니다.