마지막 학기, 마지막 시험을 하루 앞두고 공부가 안돼서 작성해본다.
사실 나는 4주차를 마지막으로 합격을 못할 줄 알았다.
4주차를 열심히 구현해봤지만 5개의 테스트 케이스 중 1개밖에 통과하지 못했다. 그래서 다시 한 번 더 풀어보려고 했고, 최종 코테도 준비할까 했었지만 바로 눈앞에 있는 기말고사와 졸업프로젝트를 준비하는 게 더 나은 길이라고 생각했다.
정말 아무런 기대도 하지 않았기 때문에 발표 당일 날에도 시험 공부를 하다가 '아 맞다 오늘 발표날이지?'하고 메일을 들어갔다.
그런데 정말 놀랍게도 첫 문장이 "이 메일을 받는 분들은 최종 코딩 테스트 대상자입니다."였다. 믿기지 않아서 5번 넘게 새로고침하고 읽은 것 같다. 다른 사람들한테 보낼 것을 잘못 보낸거 아닌가 해서 시험 당일날 신분증 검사를 할 때까지 '앗 명단에 없는데 잘못 보낸 것 같네요..'라고 하면 어쩌지 걱정했다 ㅋㅋㅋ
다른 사람들한테도 "난 어차피 떨어진 것 같아"라고 말하고 다녔어서 붙었다고 신나게 말하기도 했다.
그런데 진짜 문제는 졸업프로젝트 발표 이틀 전이었고 중간고사와 과제도 밀려있었다. 결국 다 끝내고나니 나에게 남은 건 하루였다.
우선 나는 작년 6기 최종 코테 문제를 풀어봤다. 그런데 5시간은 무슨 6시간도 훌쩍 걸리는 것이 아닌가
그래서 최대한 준비할 수 있는 함수들은 준비해가자고 생각했다.
notion에 readme 템플릿, 자주 쓰이는 함수들, 파일 구조들을 정리해갔다. 지금 생각해보면 감상문도 적어갈껄 그랬다는 생각이 든다.
사실 보통 4주차 미션보다 최종 코테가 훨씬 쉽다는 글들을 많이 봤기 때문에 조금은 안심하고 있었다. 그런데 최종 코테 문제가 열리고 차분히 읽어보니 다른 기수때와 다르게 난이도가 4주차와 맞먹는 수준이었다.
난 리드미 및 기능 정리 30분 후 1시간 내에 상수 정리, 인풋뷰 정리를 끝낼 생각이었고 실제로 거의 원하는대로 끝냈다.
3시에 쉬는 시간이 주어졌고 그때 든 생각은 "기능 구현 완성 가능하겠는데?"였다. 그런데 쉬는 시간 직후부터 잘못된 선택을 했다.
문제는 출석부를 구현하는 문제였는데 나는 굳이 문자열로 주어진 시간을 dateTime api를 이용해 시간 객체로 생성해야겠다는 생각이 들었다. 지금 생각하면 어차피 월 단위로 출석부가 갱신되기 때문에 날짜와 시간만 따로 분리해서 비교해도 충분했을 것 같다는 생각이 든다...
여기서 내가 원하는 포맷으로 생성이 안돼서 30분 넘게 붙잡고 있었다. 정신차리고 보니 너무 많은 시간이 흘러 그제서야 큰일났다는 생각이 들었다.
우선 저장부터 구현을 했으나 평소였으면 예외처리 제외 후 구현을 하고, 예외처리를 전부 구현했을 것이다. 그런데 시간이 없다보니 기능 구현을 중구난방으로 하기 시작했다. 저장이 어느정도 된 것 같으니 다음기능으로, 다음 기능도 어느정도 된 것 같으니 다음 기능으로.. 이런 식으로 넘어가니 하나도 100% 제대로 된 것이 없었다.
테스트 코드를 실행해보니 역시나 1개도 통과하지 못했고 그때부터 예외처리를 시작했다.
아직도 한 개는 맞게 출력되는 것 같은데 왜 안되는지 모르겠지만 결국 2개는 성공했다. 나머지 하나도 2분만 더 있었으면 성공했을텐데 아쉽다.
최종적으로 평가할 땐 test 뿐만 아니라 앞의 자소서나 프리코스 등을 최종 합쳐서 평가하는 것 같다. 코드는 다른 분들보다 훨씬 아쉬울 것 같지만 프리코스, 자소서는 정말 누구보다 노력했기 때문에 좋은 결과가 있었으면 좋겠다...