[우아한테크코스 6기 BE] 긴장감 넘쳤던 최종 코딩 테스트 후기

프리코스 합격!

4주간의 프리코스가 끝나고 12월 16일!! 1차 합격 결과 발표날이 다가왔다.

발표 메일은 3시에 도착이었는데, 너무 긴장돼서 우테코 커뮤니티의 사람들 반응을 살펴보다가 메일을 열어봤다.

 

그 결과는..

너무나도 기뻤다.

이 기쁨은 정말 말로 형용할수 없는 기쁨이었다..

왜냐하면 작년 5기 탈락 이후로 나 자신을 성장시키기 위해서 정말 쉬지않고 1년간 성장하기 위해 쭉 달려왔었기에

이런 결과를 받은 순간 그 동안의 노력에 대한 보상을 받은 것 같아 정말 너무나도 기뻤다!

 


최종 코테 연습

발표 전에도 어떤 결과가 나올 진 모르지만 발표 후에 5일이란 시간밖에없기 때문에

5시간안에 미션을 완성시켜야하는 최종 코테에 맞춰

이전 기수들의 문제들을 5시간 타이머를 재고 풀어보는 연습을 해보았다.

 

그리고 최종 코딩 테스트는 결과 발표 후 5일 뒤인 12월 21(토) 1시에 진행되었다.

그래서 발표 결과가 서울에 상경하는 하루를 제외하고 남은 4일간

지난 프리코스 문제들을 전체적으로 5시간안에 푸는 연습을 해보며

어떤 분이 만드신 "보스 몬스터" 커스텀 문제도 풀어보았다.

 

연습하는 과정에서 5시간안에 만들기 위해 기존에 도메인과 입력값 검증 로직을 분리했었던 것을

입력시에 모두 검증하게 바꾸며 고민하는 시간을 줄여 5시간안에 완성 시킬 수 있는 방법으로 연습을 해나갔었다.

결과는 모두 5시간안에 구현 가능했었고 가장 어려웠던 4주차 미션또한 5시간에 성공시켰기에

나름 만족(?)했었고, 시험칠 마땅한 노트북이 없었기에 주문한 m3 pro가 금요일에 딱 도착을해주어 설레는 마음으로

빠르게 세팅을 마친 후 상경해 선릉 캠퍼스 앞 호텔에 방을 잡고 긴장되는 마음을 부여잡고 다음 날을 맞이 했다. 😆

 

영롱한 스페이스블랙 색상의 m3 pro...


최종 코딩테스트 시험 당일

아침에 설레는 마음으로 일어났는데 정말 좋지 않은 일이 생겼다..

응원한다고 같이 올라간 친구가 내가 자는 사이에 구경한다하다 하루된 내 생애 첫 맥북에 물을 쏟은것이다..

 

시험 당일에 이런 일이 생길지 상상도 못해 어안이 벙벙했고 정말 당황스러웠다.

하지만 내가 할 수 있는 것은 1시전에 내부 물을 증발시켜 말리는 방법밖에 없어

맥북을 거꾸로 뒤집어 최대한 말려놓고 12시에 빠른 입장을 했다..

 

12시에 입장하여 시험장에 앉아 진짜 제발 잘 작동해줘..하는 맘으로 맥북을 열었다.

일단은 정상적으로 부팅은 됐는데, 계속 화면이 깜빡이면서 꺼져버렸다...

진짜 너무 안절부절했다.. 지금까지 해온 노력으로 이렇게 좋은 결과가 결과가 생겼는데 그 동안의 노력이 물거품이 되는게 아닌가... 😨

 

시험 시작은 1시였는데 내부 와이파이 문제로 30분이 연장되었고

다행히 시험 시작전에는 끊임없이 화면이 꺼지던 현상은 멈출 수 있었다..

진짜 천운인가 싶었다.. 😃 

(시험 끝난 후 맥북은 바로 사망했습니다..)

 

1시 반이 되고 시험이 시작되었다.

미션 이름은 "개발자 비상근무"근무 시작 날짜와 평일, 휴일근무자들을 입력 받아 평일 근무자와 휴일 근무자의 근무표를 만드는 것이었다.

 

이전 연습에서 항상 느꼈던 것은 "요구사항에 대해 확실히 이해하기"였다.

요구사항을 잘못 이해해 불상사가 생기지 않도록 정말 꼼꼼하게 요구사항을 검토한 후 기능 목록을 작성해 나갔다.

기능 목록을 작성하는데 아마 30분 정도 시간이 소요되었던 것 같다.

 

그리고 기능 단위로 커밋한다는 요구사항에 맞춰 구현한 기능 대로 기능 목록을 ✔ 하며 커밋해갔다.

 

기능 목록을 정리하면서도 "아 이거 좀 어렵겠는데..?"라고 생각했었는데

익숙하지 않은 날짜 객체를 다루고 요구사항 조건 중 하나인 "비상 근무자가 연속 2일 근무할 경우 다음 근무자와 순서를 바꾼다"를 해결하는데 정말 어려움을 겪었다.

 

그래서 우선적으로 4주차에 해본 LocalDate 객체를 이용해 날짜 다루는 것을 참고하여 평일, 주말, 공휴일을 다룰 수 있도록 하고,

이번 미션에 생긴 추가 요구사항인 "docs/how-to-solve.md에서 미션 해결 전략 문항에 답변을 필수로 작성한다."가 있었는데

이 문서에 "비상 근무자가 연속 2일 근무할 경우 다음 근무자와 순서를 바꾼다"에 대해 본인이 어떻게 이해했는지 작성하는 것이었다.

그래서 마지막인 해당 기능 구현을 하기 앞서

how-to-solve.md 어떻게 이해했는지에 대해 다음과 같이 확실히 정리하고 이해한 것을 바탕으로 해당 기능을 구현을 해나갔다.

(2번은 선택사항이라 시간이 부족해 작성하지 못했다 ㅠ)

 

이 기능 구현까지 마치니 시간은 어느 덧 30분? 정도 밖에 남지 않았었고

남은 시간동안 요구사항을 만족한 부분이 없는지 꼼꼼히 체크하며

리팩토링이 필요한 부분에 대해 리팩토링을 마친후 테스트 코드 통과됨을 확인하고

테스트 코드로는 확인 되지 않는 연속 2틀 째 근무일이 평일에 해당할 경우, 연속 2틀 쨰 근무일이 휴일에 해당할 경우에 대해서도 작성한 how-to-solve.md 문서 설명에 맞게 동작하는지도 확인 한 뒤

우테코 지원 사이트에 해당 레포의 주소를 넣은 뒤 제출하였다.

(아쉽게도 소감문은 시간 부족으로 정말 짧게 작성할 수 밖에 없었다.)

제출이 마감 된 후, 최종 코딩 테스트에 대한 설문조사를 작성하는 것이 있었다.

설문 조사를 작성하지 않으면 최종 코딩 테스트가 평가 되지 않는다고 한다.. 😨

짐 챙기다가 자연스럽게 시험장을 나갈 수도 있을 불상사를 방지하기 위해

짐 챙기기 전에 좋은 기회를 주신 것에 대해 감사함을 담아 성실히 설문조사에 임하고 제출 한뒤  짐을 싸고 시험장을 나갔다.


최종 시험이 끝난 후

건물 밖으로 나왔을 때 첫 눈이 내리고 있었다. ☃☃

지방에 살면서 눈 내리는 것을 보기 정말 힘들어 눈을 참 좋아하는데

밖으로 나왔을 때 첫 눈이 날 맞이하는 게 정말 포근하고 마음이 따뜻해지더라...

 

이제 12월 27일 최종 결과만을 남기고 있다.

5기 지원 때의 실패 이후 비전공자인 만큼 정말 열심히 노력하여 6기 지원으로는 1차 합격이라는 결과를 얻을 수 있었다.

이것만으로도 정말 행복했는데 최종 결과도 좋은 결과가 나온다면 정말.... 🙏🏻🙏🏻🙏🏻

 

다른 지원자도 나 처럼 정말 간절한 마음일 것이다.

긴 시간동안 노력해온 다른 지원자분들에게도 박수를 보내주고 싶다 👍🏻 👍🏻

 

(맥북은 내일 집이랑 가까운 센터 찾아가 수리할 예정입니다 ㅠ)