최종 코딩 테스트를 준비하면서 ~ 마칠 때까지의 후기와 당일 코테 회고에 대한 내용을 작성하였습니다.
🐾 최종 코딩 테스트 후기
준비 기간
최종 코딩테스트 전까지의 시간동안 기존 기수들의 문제를 풀었습니다.
1차 결과가 나오기 전에 이미 지하철 노선도와 페어매칭, 다리건너기를 미리 풀었던 상태였습니다!
결과가 나오고 나서는 최종 코테 환경과 동일하게 1~6시까지 남은 문제들을 풀이해보는 시간을 가졌습니다.
숫자야구, 레이싱카, 로또 등은 이미 선발 과정 전에도 스터디나 혼자서 풀었었기 때문에 여러번 더 풀다보니 문제를 암기해버리게 되어서 자판기나 점메추 등 익숙하지 않은 문제들을 위주로 주어진 시간안에 요구사항을 충족할 수 있도록 하는 것을 중점으로 하였습니다.
미션을 하면서 재사용이 가능한 부분들은 템플릿을 만들어서 준비를 하였다.
여러번 풀면서 팁 아닌 팁인데, 모든 미션 제일 위에 적혀있듯이 요구사항 출력값과 다를 경우 0점입니다.
당연한거라고 생각할 수도 있지만 같이 준비했던 분들 중에 저보다 훨씬 실력자임에도 불구하고 이 부분을 놓치는 분들이 꽤 있었습니다.
따라서 저는 출력값들을 일단 동일하게 세팅해놓는 것을 개발 1순위로 잡고 나머지 요구사항을 충족하기 위해 노력하였습니다.
+) 프리코스 코드 템플릿을 활용했던 경험을 살려 서비스를 만들었습니다.
나만의 코드 템플릿을 쉽게 저장하고 재사용할 수 있도록 돕는 사이트입니다.
준비하실 때 활용하시면 좋을 것 같아요~!
당일
일단 이틀 전에 편도염이 심하게 걸렸다가 링겔을 맞고 살아난 줄 알았지만… 당일 새벽에 열이 심하게 나서 컨디션이 꽝이었습니다... 해열제 급하게 먹고 시험장으로 향했습니다.
근처 식당에서 간단하게 밥을 먹고 12시 조금 넘어서 시험장으로 향했는데 이미 반 정도의 사람들이 도착해있었어요.
시험 시간이 1시였는데 와이파이 문제로 30분가량이 지연되었고 시험 시작 후 개발자 비상 근무표 생성 미션이 공개되었습니다.
약을 많이 먹기도 했고 (거의 당일에만 20알 가까이 먹었다) 지연이 되다 보니 오히려 긴장이 안되어서 당황했을 정도였습니다.
당일에 중요한 건 쫄지 않는 것과 누가 더 차분하게 미션을 끝내느냐, 이게 관건인 것 같습니다.
미션을 진행하면서 근무표를 배정하는 방식에 리스트를 사용하여 구현을 하였다.
연속 근무자 발생 시 인덱스를 수정하여 근무 순서를 조정하는 방식으로 구현을 하였는데, 디스코드나 다른 분들 회고를 찾아보니 deque로 풀이를 하신 분들이 제법 많았던 것 같다.
방식에는 여러가지가 있으니 이건 정답은 없을 것 같지만 구현을 하면서 약간 실수를 해서 이 부분이 조금 걸립니다…
미션이 끝나고
미션이 끝나고 선릉캠을 나오면서 생각보다 쉬운데? 라는 생각이 들었습니다.(^^…)
그러고나서 하루 지나고 돌아보면서 실수들을 알아차렸고 한 몇 일동안 눈만 감아도, 꿈에서도 그 실수 생각들이 났던 것 같습니다…
그렇게 속상해하고 있었는데 보다 못한 지인이 넌 최선을 다했고 여기서 뭘 더 어떻게 하느냐 라고 말을 해줬는데 이 말이 참 힘이 됐었습니다. 당일에는 압박감도 크고 일단 시간 제한의 영향이 있기 때문에 수많은 제약 조건들 중 하나도 실수를 안하는 게 중요하지만 동시에 대단한 것 같습니다...
실수가 있었던 부분들은 아쉽긴 하지만 빨리 훌훌 털고 다음 스텝을 향해 나아가는 것이 맞는 것 같다고 생각이 들었습니다.
1차 합격을 기다릴 때와 달리 최종 결과까지는 1주일이 조금 안 남았는데 하루하루가 정말 안가더라구요.
결과가 어떻게 나오든 선발과정동안 진짜 내 모든 최선을 다했기 때문에 아쉽더라도 후회는 없을 것 같습니다.
그리고 진심으로 선발기간동안 성장을 한 것 같아서 우테코 코치 및 코드리뷰원들 등등 주위 분들에게도 다 너무너무 감사합니다.
☝🏻 최종 코딩 테스트 KPT 회고
Keep
- 기능 목록을 가능한 잘게 작성한 것
- 미리 개발 관련 템플릿, 투두 리스트 등을 준비하여 시간적으로, 심리적으로 조금이나마 여유가 있었다.
- 소감을 일부분 작성해간 것
- 최대한 긴장하지 않으려고 노력한 것
- 요구사항을 최대한 다독한 것
- 요구사항 도출 후 우선적으로 출력 요구사항을 채우기 위해 개발한 것
- 출력 요구사항을 어길 시에 설계를 아무리 잘했더라도 0점이기 때문에 일단 출력값과 동일하다는 것에 대해 심리적인 안정감이 있었다.
- 개발을 하다가 설계 부분에서 변경사항이 조금 있었는데 빠르게 대책을 생각하였다.
- how-to-solve 문서 작성 시 1,2번을 최대한 다 작성하려고 하였다.
- mvc 연습을 충분히 했었어서 이부분을 적용하는 것에는 빠르게 판단이 가능하였다.
Problem
- 요구사항을 다독하려다 보니 기능목록에서 조금 놓친 부분들이 있었다.
- 테스트 코드 작성에 시간을 배분하지 못했다.
- 최대한 차분히 구현 방법을 생각하려 하였으나 시간에 쫓겨 예외 상황을 충분하게 도출하지 못했다.
- 기능목록 단위로 커밋하려고 했으나 후반부에 조급함이 느껴져서 조금 부족하였다.
- how-to-solve 문서 작성 시 1번 문항에 대해 출제 의도와 약간 다르게 작성한 것 같아 아쉬웠다.
- 소감문 작성 시 시간이 너무 부족해서 미리 작성한 부분말고는 많이 미흡하게 작성하여 아쉬웠다.
Try
- 테스트 코드 작성에 충분한 시간을 배분하고 구현에 들어가는 것이 좋을 듯하다.
- 구현 로직에 대해 가능한 예외 상황을 도출하는 것
- 소감문을 당일 내용을 비우고 선발과정 전체에 대한 것을 작성했는데 당일이라 가정하고 일단 작성해놓는 것도 방법일듯하다.
- 커밋 단위에 대해 더 신경을 쓰는 것
🔥 최종 합격
감사하게도 최종 합격을 하게 되었습니다.
가서 폭풍 성장하는 한해가 될 수 있도록, 또 초심을 잃지 않도록!!! 열심히 배우고 기록하겠다는 다짐과 함께 마무리합니다...!