https://softeerbootcamp.hyundaimotorgroup.com/
HMG SOFTEER BOOTCAMP - 현대자동차그룹 소프티어 부트캠프
현대자동차그룹의 채용 연계형 소프트웨어 개발 교육 과정, 소프티어 부트캠프의 교육과 프로젝트로 성장을 경험해 보세요.
softeerbootcamp.hyundaimotorgroup.com
서론
인생 첫 부트캠프 합격 후기를 남겨보려고 한다.
후기 작성 목적은 다음과 같다.
1. 부트캠프 지원 과정에서 당시 심정과 고민, 학습 방식 등을 명확히 기록하여 기억해두고자 함.
2. 아직 4기이기 때문에 후기가 많지 않다는 것을 감안하여 다음 기수 지원자 분들에게 도움이 되었으면 하는 마음에 작성함. (본인 또한 실질적으로 도움 많이 받았다.)
소프티어는 지인 톡방에 올라온 소프티어 부트캠프 4기 모집 공고를 보고 마감 당일(5/20)에 급하게 지원하게 되었다.
요즘 무료하게 집에서만 취준생활을 하다보니 나태해지는 것도 있고, 주변에 자극 받을 만한 요소가 많이 없다보니 개발에 대한 의욕이 부족해진 것 같았다. 그래서 새로운 도전에 대한 자극을 느끼고 싶어서 바로 지원했다.
소프티어 부트캠프 같은 경우에는 서류도 거의 개인정보 입력 수준으로만 하면 되는 것 같고, 면접도 없어서 부담이 덜 되었다. 하지만 쉽게 지원할 수 있기 때문에 그만큼 지원자도 많을 것 같다는 생각이 들었다.
우선 모집 일정은 다음과 같다.
지원서 접수
지원서는 개인정보와 졸업/졸업예정을 증명할 수 있는 서류만 제출하면 됐다.
그랬더니 다음 날(5/21) 바로 아래와 같은 메일이 왔다.
서류는 그냥 다음 조건들만 충족되면 바로 통과하는 것 같다.
1. 2024년 2월 ~ 2025년 2월 내 졸업 예정자
2. 병역사항(병역필/면제/비대상) 충족
1차 코딩 테스트
1차 코딩 테스트 전에 모의 테스트(5/22)를 한 번 봤다. 메일에 링크가 있었는데 '구름'이라는 사이트에서 진행했다.
모의 테스트는 1차 코딩 테스트를 보는 환경에 적응할 수 있도록 사전에 동일한 환경으로 테스트해볼 수 있는 기간이다.
웹 개발(FE/BE) 분야의 시험 응시 언어는 C, C++, Java, JavaScript 였다.
Python은 사용 불가했고, 데이터 엔지니어링 분야에서만 Python 사용이 가능했다.
어차피 계속 C++로 알고리즘 공부를 해왔기 때문에 그냥 개인 데스크탑에 있는 IDE를 사용하여 진행하면 됐다.
모의 테스트에서는 1문제가 나왔다. 본인은 DFS 알고리즘을 사용해서 풀었는데, 체감상 실버2~3정도 였던 것 같다.
당시에 낮잠이 생활화 되어 있어서 점심먹고 1차 코테 직전까지 잠을 열심히 때렸더니 머리도 멍하고 긴장이 하나도 안돼서 그냥 망했다고 생각했다.. 물론 알람은 맞춰놨기 때문에 시험 전에 일어날 수 있었다.
본 시험 시작 60분 전부터 입장할 수 있어서 입장 후, 과거에 풀었던 알고리즘 풀이들을 보면서 하나씩 복습했다.
코딩 테스트 가이드에서는 인터넷과 책을 참고할 수 있다고는 했지만, 생성형 AI나 본인이 했던 풀이 블로그, 깃허브, 사전에 작성해둔 필기 등을 절대 볼 수 없고, 문법 모르는 것들 정도만 검색할 수 있는 것 같았다.
또한 인터넷에 나온 코드들과 유사할 경우, 코드 유사도 측정에 의해 부정행위로 판정되어 탈락할 가능성이 있기 때문에 단순히 '참고'만 가능했기에 인터넷 사용은 거의 안하려고 했다.
그리고 가장 중요한 종이 필기도 불가능했다.. 보통 문제 풀 때 태블릿이나 종이를 사용해서 풀어보는 연습을 많이 해서 그런지 그냥 컴퓨터에 있는 메모장과 그림판을 사용하여 푸는 게 좀 익숙하지 않았지만 어쩔 수 없이 적응해야 했다.
책은 귀찮아서 안 볼 것 같고, 인터넷에 헷갈리는 함수있으면 검색해봐야지 하고, 시험 직전에는 그냥 좀 어렵게 풀었던 문제들이나 헷갈리는 알고리즘 위주로 복습했다.
(부정행위에 대한 기준이 좀 불명확해서 거의 질문 폭탄 수준으로 문의했다.. 지금 생각해보면 어떻게든 부정행위 안걸리면서까지 인터넷 득보려고 발악한 것 같아서 너무 웃기다 ㅋㅋ 막상 문제 풀 땐 뭔가.. 문제 풀기 바빠서 인터넷 검색을 거의 못했던 것 같다.)
1차 코딩 테스트(5/24)는 2시간이었고 총 5문제가 나왔다.
솔직히 2시간 치고 문제 수가 꽤 있어서, 엄청 쉬운 문제 하나쯤은 있을 것 같다고 생각했는데 큰 오산이었다.
우선 결론만 말하자면 본인 피셜 2솔이다.
2번, 5번 문제는 확실히 풀 수 있을 것 같아서 먼저 풀었고, 4번 풀다가 시간 이슈로 끝나버렸다. 그래서 1, 3, 4번 문제는 끄적이다 만 걸 그냥 다 복붙해서 제출해놓고 나왔다.
문제 풀기 전에 한 번씩 다 훑어봤는데, 1번 문제가 입출력이 꽤 까다로운 것 같았다. 자주 접해본 입출력 방식이 아니라서 시간 많이 잡아먹을 것 같다고 판단하여 넘겼다.
2번 문제는 딱 보자마자 읽기 귀찮게 생겨서 우선 그냥 넘겼다..ㅋㅋ 이렇게 말하면 좀 그렇긴 한데.. 뭔가 용어가 다 읽기 싫게 생겼다.
3번 문제도 1번과 비슷한 느낌이 좀 있었는데, 분류해보자면 수학, 구현 이쪽이었던 것 같다. 이 문제도 그냥 딱 보자마자 그닥 익숙한 문제가 아니라 시간 오래걸리겠다 싶어서 그냥 넘겼다.
가장 먼저 푼 문제는 5번이었는데, 그냥 딱 보자마자 이거다 하고 바로 풀어버렸다. 본인은 BFS 알고리즘을 사용하여 풀었고, 가장 익숙한 문제여서 금방 풀었던 것 같다.
그리고 나서 4번 문제 풀려고 시도했다. 5번이랑 비슷한 느낌이면서 좀 더 조건이 까다로워서 백준 티어가 더 높아보였다. 그래서 열심히 메모장에 문제를 분석하면서 조건을 막 적었는데, 너무 복잡해서 오래걸릴 것 같다는 느낌이 들었다.. 시간 안에 다 못풀 것 같은 느낌이 들어서 끄적이다가 넘겼다.
두 번째 푼 문제는 읽기 싫어서 넘겼던 2번 문제였다. 4번 넘기고 뭐 풀지 하면서 1, 2, 3번 다시 훑어보다가 2번을 제대로 읽었는데 생각보다 풀만 한 것 같았다. 메모장은 필수로 필요한 문제였고, 차근차근 계산하면서 대조하고 변환하고..(문제 푼 사람들은 무슨 말인지 알 것임..!) 했더니 테케가 다 잘 맞게 나왔다. 코드를 좀 더 보기 쉽게 리팩토링해 제출했다.
4번 풀다가 시간이 끝나버렸는데, 그냥 그럴 시간에 1번을 풀 걸 그랬나 싶다. 4번은 나한테 있어서 그 당시 남은 시간 내로 다 풀 수 없는 문제였다.
1차 결과
솔직히 2솔하고 합격 못할 줄 알았다. 알고리즘 잘 푸는 사람들은 널리고 널렸으니..
친구가 소프티어 1차 결과(5/31) 나왔다길래 호다닥 들어가서 봤다. 기대 안했다곤 했지만 그래도 심장이 뛰는 건 속일 수 없었다.
운 좋게 붙었다. 주변 얘기 들어보니 2솔인데도 떨어진 분들도 계시고, 2솔인데 붙은 사람들도 있는 거 보니까 우리가 모르는 그들만의 합격 기준이 있는 것 같았다. 그리고 애초에 문제 별 배점이 다를 수도 있다고 했고, 문제에 제시되지 않은 히든 테케도 추가적으로 확인해 채점한다고 했기 때문에 같은 2솔이어도 다를 수 있다고 판단했다.
2차 SW 지식 테스트 준비 과정
위 1차 결과가 나온 후 정확히 일주일 뒤에 2차 CS 테스트(6/7)가 있었다.
1차 결과 나온 당일에 오랜만에 연극보고 열심히 술 마시고 있었는데, 한편으로는 2차 테스트 볼 생각이 머릿속에 가득했다.
그럴 수 밖에 없는 이유가 2차 테스트는 CS 문제를 내는데 이전 기수들을 보니 보통 30문제 정도 나오는 것 같고, 문제도 어마무시하게 어렵다고 그랬다.. 그래서 겁났다 ☹︎ 그래서 다음날 바로 아파트 독서실을 등록하고 남은 일주일 동안 독서실에 박혀있었다.
이번 기수에는 제출 분야가 총 5가지였다.
심지어 아래처럼 나온 것이 전부이고, 더 이상 상세히 나와있지도 않아서 범위가 너무 방대했고, 기본 지식이 있어야 어느 정도 풀 수 있을 것 같았다.
운영체제, 네트워크, 프로그래밍언어, 데이터베이스, 아키텍처
우선 이전 기수 분들의 후기를 참고해봤다.
책 추천이나 강의 추천도 여러 개 있었으나, 시험 일주일 남았는데 지금 구매한다고 해도 다 읽거나 다 보지도 못할 것 같아서, 그냥 집에 있는 책들과 학교 수업 때 사용했던 자료 등을 활용하여 본인 방식대로 공부하였다.
우선 앞선 기수 분들의 후기 블로그를 참고하여 알아낸 'gyoogle(규글)'이라는분의 https://gyoogle.dev/blog/해당 웹 사이트를 활용하여 복습했다.
아키텍쳐는 도무지 어떤 문제가 나올지 감이 안와서 그냥 해당 사이트에서 읽은 게 다였다.
본 사이트에서는 아래 4가지 카테고리만 읽었다.
- Conputer Architecture
- Operation System
- Database
- Network
그리고 JSCODE 모의 면접 스터디 당시 본인 블로그에 작성했던 '네트워크'와 '운영체제' 관련 내용들을 다시 복습했다. 다시 읽어보니 양이 꽤 많아서 헷갈리는 부분도 다시 정리하고 모르는 부분은 구글에 검색해가면서 더 공부했던 것 같다. 그리고 JSCODE 멘토분들께서 작성해주신 이론적인 내용의 여러 자료들도 읽으면서 복습했다.
추가로 운영체제는 학교 다닐 때 가장 존경하던 교수님 중 한 분인 본인의 지도 교수님의 강의와 강의 자료를 애용했다.
3학년 때 교수님의 운영체제 수업을 들었기 때문에 복습하는 겸 다시 봤다.
강의자료를 전체적으로 한 번씩 다시 훑어보면서 헷갈렸던 부분은 강의 영상을 보며 다시 복습하고, 어려운 부분은 손으로 직접 풀어보면서 복습했다.
강의 자료와 강의 동영상은 아래 링크로 첨부한다.
강의 자료:https://sites.google.com/view/hpclab/courses
강의 동영상: https://www.youtube.com/@hpclab.koreatech4592/playlists
운영체제에서 메모리 관리 기법이나, 여러 스케줄링 방식 등 필수로 알아야 하는 내용들을 본 강의와 강의자료를 통해 다시 복습했던 것이 정말 도움이 많이 됐다.
문제 방식이 어떤 식으로 나오는지 아예 몰랐는데 어떤 분께서 정보처리기사 책이 도움이 많이 됐다고 하길래, 마침 집에 정보처리기사 실기 봤을 때 사용했던 실기 책이 있어서 이 책을 사용해 공부했다.
실기 책을 전부 볼 필요는 없어서 선택적으로 제출 분야에 관한 내용만 학습을 했다.
III. 데이터 입출력 구현 : 시간상 보진 않았는데, 데이터 모델링, 정규화 등 기본적인 DB 내용들이 잘 정리되어 있어서 꼭 공부해보길 추천한다.
VI. 프로그래밍 언어 활용 : 이론 내용과 문제까지 전부 봤다. C, Python, Java 관련 내용이라 문제를 무조건 풀어보는 것을 추천한다. 특히 Java는 생성자 호출 순서와 같은 기본적인 내용이 매우 헷갈리기 때문에(사실 본인이 Java에 취약하다) 이 부분을 정리를 좀 잘하면 좋을 것 같다.
VII. SQL 응용 : 시간이 별로 없어서 이론 내용만 훑어보았다. 시간이 된다면 다 풀어서 이론 정리를 좀 더 제대로 했을 것이다.
XI. 응용 SW 기초 기술 활용 : 운영체제와 네트워크 관련 내용으로 이론 및 문제를 전부 복습했다. 서브넷 계산 방식이나 계층 별 프로토콜 종류, 프로토콜 구조 등을 좀 더 자세히 학습했다. 사실 전부 복습했다고는 하지만 뒤에 '신기술 용어'가 엄청 나오는데 그걸 다 보진 않았다.
추가로 네트워크의 경우에는 3학년 때 들었던 수업인 '컴퓨터네트워크'와 '데이터통신' 강의와 본인이 가지고 있는 강의자료 및 퀴즈 등을 활용하여 복습했다. 본 교수님 시험 때 IP 주소, 서브넷 등 계산하는 문제가 진짜 엄청나게 많았는데, 그 때 고생했던 것이 정보처리기사 공부할 때와 지금까지도 이렇게 도움이 될 줄은 몰랐다. 사실 네트워크 쪽은 그냥 해도해도 어렵고 헷갈리는 것 같다...
강의 동영상은 유튜브에서 무료로 볼 수 있어서 아래 첨부하겠다.
강의 동영상: https://www.youtube.com/@user-wh3iu3vm7l/playlists
데이터베이스 같은 경우에도 마찬가지로 3학년 때 '데이터베이스설계' 수업 때 사용했던 교수님의 교재로 이론을 싹 다시 정리했다. 본 책을 읽을 때는 시험 전전날이었고 시간이 별로 없었기 때문에, 그냥은 다 못읽겠다 싶었다. 그래서 어떤 페이지에서 어떤 것을 읽으면서 무슨 생각을 했었는지, 그 때 읽었던 그 감정과 행동을 최대한 기억해내어 '시험 공부할 당시에 정말 열심히 책을 읽으며 공부했던 나'로 빙의하여 엄청 빠르게 속독했다. 그냥 컨셉 잡고 하니까 겁나 빨리 읽어지더라.. 비록 22년도 초반이었지만 기억이 완전히 사라지지 않았기 때문에 가능했던 것 같다.
그리고 SQLD 취득 당시에 사용했던 그 유명한 '노랭이 책'을 보면서 복습했고, 프로그래머스 사이트에서 SQL 문제 푼 것들 중에 난이도 높은 문제들(여러 개 조인, WITH AS, 변수 선언) 위주로 조금 봤다.. 시간이 없어서 SQL 코딩 문제는 더 많이 보진 못했고, SQLD 책도 사실 적당히 앞에 이론적으로 나오는 문제들만 열심히 봤다. 본인은 데이터 모델링 과정과 정규화, 트랜잭션, 인덱스, 여러 SQL 함수들을 집중적으로 공부했다. 함수는 사실 문제 풀 때 항상 쓰던 것만 쓰는 느낌이라, 생소한 것들이 꽤 많아서 다 헷갈렸다.. 그래서 과감히 안외웠다!
2차 SW 지식 테스트 후기
우선 시험 문제 수는 28문제로 이전 기수와 비슷했고, 제출 분야별로 골고루 나왔던 것 같다. 시험 시간은 2시간이고 사전 점검 시간 포함 2.5시간이었다.
문제는 매우 많았는데, 초장부터 막혀서 너무 답답했다. 2시간 안에 다 풀 수 있을지 걱정을 했는데, 그냥 어려워서 못푸는 경우가 더 많은 것 같다. 그래서 본인은 더 이상 풀만한 문제가 없다고 판단하여 시험 30~40분 전에 종료하고 나왔다.
일단 최대한 제출은 다 했다. 답을 빈 칸으로 제출하는 것은 채점자 입장에서 좋아보이지 않을 것 같다고 생각해서, 헷갈리거나 아예 몰라도 우선 어떻게든 꾸역꾸역 풀어서 답을 기입했다.
서술형 지분도 꽤 있었고, 객관식은 객관식이라고 무시하면 절대 안됐다.. 객관식 지문은 엄청 헷갈리고 여러 개 선택해야 하는 경우도 있어서, 답을 확신하지 못하는 상황에서는 선택장애가 왔다.
뭔가 시험을 보고 나니 선택과 집중을 잘 못했던 것 같다. 솔직히 자세한 시험 범위가 있는 것도 아니었고, 시험 범위가 방대하다보니 모든 내용을 복습해야겠다는 마음가짐으로 공부했었다. 그런데 생각보다 지엽적인 문제도 많이 나왔고, 깊이있는 내용이 출제되었기 때문에 문제를 넘길 때마다 속으로 망했다를 외치며 계속 탄식했다.ㅋㅋ 그래도 전반적인 내용을 복습하지 않았더라면 더 못풀었을 것 같았다.
데이터베이스 문제들도 이론적으로는 다 알고 있는데, 이런 방식으로 깊이 고민을 해본 적이 없어서 헷갈렸다. 그리고 뭔가 새로운 문제 유형인 것 같았다. 근데 그냥 본인만 처음 접해본 걸 수도 있다..!
본인 기준으로 아키텍처, 네트워크 문제들이 가장 어려웠는데, 이 부분에 대해서는 대충 공부하면 안된다는 것을 느꼈다. 그래도 학교 수업 때 들었던 내용들과 모의 면접 스터디를 진행하면서 자세히 공부했던 부분이 많이 나왔다. 하지만 이론적으로 대충 안다고 해도 더 구체적으로 상세히 알아야 할 정도였고, 단답형과 서술형이 많았기에 제대로 답을 정확히 기입하지는 못했던 것 같다.
운영체제와 프로그래밍 언어는 기본적인 이론이나 문법 등을 잘 이해하고 활용할 수 있는지에 대한 테스트였던 것 같다. 둘 다 문제 많이 풀어보는 것을 추천한다. 운영체제 문제들은 잘 풀었던 것 같은데, 프로그래밍 언어가 본인에겐 훨씬 어려웠던 것 같다. 프로그래밍 언어 문제 중 예상치 못한 문제들이 있어서 그랬던 것 같다.
2차 최종 결과
1차 때는 그래도 어느 정도 희망이 있었다면 2차 때는 고난도 시험의 여파로 멘탈이 나가서 그냥 아예 떨어졌다고 생각했다. 본인은 소프티어는 물건너 갔고 프로그래머스 데브코스를 지원하고자 하여 자소서를 작성하고 있었는데, 소프티어 결과 나오는 날(6/20)이라 확인해야 했다. 솔직히 메일 열기 싫었다. 그냥 떨어졌다는 내용이 적혀 있으면 괜히 우울해져서 안그래도 자소서 안써지는데 더 쓸 힘이 없어질 것 같았다. 그래서 메일 목록 열고, 그냥 메일 제목만 딱 보고 합불을 판단해보려고 했다.(ㅋㅋ) 근데 위에 하나가 더 와 있길래 봤더니 소프티어 입과 확인서 관련 메일이었다. 합격이었다.
2차 테스트를 잘 풀지 못했다고 생각했고, 전혀 예상하지 못했기 때문에 그래서 더 기분 좋았다.
근데 자꾸 빨간 글씨가 괜히 의심돼서 혹시 떨어진 걸 착각한 건 아닐까 하고 몇 번씩 다시 읽었던 것 같다.
자소서 쓰던 거 그냥 바로 닫아버리고 입과 확인서 제출하고 사전 설문 완료 후 슬랙에 들어갔다.
두 달동안 진짜진짜 열심히 해야겠다고 다짐했다! 아자아자 홧팅! 🌸🌱🌼🍀✨
'회고·후기' 카테고리의 다른 글
[JSCODE 운영체제 3기] 모의 면접 스터디 회고 (2024.01.12 ~ 2024.02.09) (0) | 2024.02.09 |
---|---|
[JSCODE 컴퓨터네트워크 3기] 모의 면접 스터디 회고 (2023.09.09 ~ 2023.10.13) (0) | 2023.10.14 |