유명한 담벼락

우아한테크코스 7기 프론트엔드 최종 합격 후기

by 담담이담

우테코 합격창

서론 

우테코 지원 전 나는(2024년도 9월 기준)

  • 컴퓨터공학과 막학기 재학생(초과학기 이슈로 5학년 1학기)
  • 학점은 좋지만, 알고리즘 풀이는 거의 X  
  • 2023년 9월부터 프론트엔드 개발 시작 -> 개발 시작한지 1년째 
  • 프론트엔드 부트캠프 수료 
  • 신촌 연합 창업 동아리 프론트엔드 파트 수료 
  • 작은 스타트업에서 프론트엔드 개발 인턴 시작(2024년 9월부터 12월까지)

정도의 경험을 가지고 있었다. 

 

처음부터 프론트엔드 개발을 하고 싶었던 건 아니다. 어쩌다보니 컴퓨터공학과로 전과를 하게 됐고, 개발을 한 번도 안해봐서 부트캠프에서 시작한 게 프론트엔드였다. 그러다보니 의지도 부족했고 공부 방법도 잘 몰랐다. 

 

이후 부트캠프를 수료하고 인턴도 하고 있었지만, 스스로 자바스크립트 핵심 개념이나 리액트의 동작원리 그리고 알고리즘이 매우 부족하다고 생각 하고 있었다. 한마디로 남들 다 하는 기능 구현은 하지만, "왜" 이 기술과 이 라이브러리를 선택해서 "이렇게" 구현했는지 설명하는 능력이 매우 부족했다.  

 

인턴을 하면서 신기술을 익히고 여러가지 기능을 구현하고 페이지를 만드는 것보다 기본 베이스부터 제대로 공부하고 알고 넘어가는 게 필요하다는 생각이 들었다. 또한 나는 1) 루틴을 가지고 2) 비슷한 열정을 가진 사람들과 "함께" 공부할 때 몰입할 수 있는 사람이기 때문에 우테코에 들어가서 취업 준비를 하면 좋을 거 같다고 생각했다! 

 

 

지원서

나는 선발 전형에서 지원서가 가장 중요하다고 생각한다. 정말 많은 사람들이 우테코에 지원하고, 프리코스에는 진입 장벽이 없다. 그래서 물리적으로 모든 사람들의 프리코스 과정을 다 보기는 어렵다. 그래서 지원서에서 1차적으로 걸러지지 않는 게 중요하다. 

 

서류 접수에 10일이라는 시간이 주어지지만, 입학 설명회에서 지원서 문항에 대해 설명해주신 부분이 그대로 서류 문항으로 나왔기 때문에 미리 적을 내용을 생각해보면 좋을 거 같다. 나는 꽤 오랫동안 어떤 내용을 써야할지 고민하고 적어나갔다. 

 

저번 기수에 비해 문항이 적어진 대신 채워야할 글자수가 늘어났다. 첫 두 문항은 2000자 이내, 마지막 문항은 1000자 이내였다. 그러다보니, 거짓말을 하고 싶어도 말을 지어낼 수가 없다.. ㅋㅋㅋ 그래서 정말 솔직하게 적었다. 

 

 

[1. 프로그래머가 되려는 이유와 지원동기]

 

 

해당 문항에서는 전반적으로 "삶에서 나 자신을 잘 아는 것이 가장 중요하다고 생각"하는 사람이며 프로그래밍이 나 자신을 이해하는데에 많은 도움을 주고 있다는 맥락을 가져갔다.

 

그리고 

1) 프로그래밍을 통해 느낀 즐거움

2) 프로그래머가 되기로 한 계기

3) 프로그래머가 되기 위해 세운 목표

4) 프로그래머가 되어서 만들고 싶은 가치

5) 그 여정에 우테코가 어떻게 도움을 줄 수 있는지

 

이 문항에 딸린 질문이 5개나 된다. 그렇기에 모든 질문에 대한 답변을 다 하려고 했다. 

 

 

[2. 오랜 시간 몰입했던 경험 그리고 도전]

이 질문은 매기수 물어보기로 유명한 질문이다.

처음엔 내가 무언가에 몰입해본 적이 있나? 생각해봐도 잘 모르겠었다. 고민하다가 정말 개인적인 이야기를 적었다. 나는 기질적으로 남들보다 불안이 높다. 특히 성과에 대한 압박과 관계에 대한 불안이 높은데, 이를 어떻게 극복해나갔는지를 썼다.

 

그리고 증빙 자료로 3년 간 매주 쓴 회고록과 1년 간 매일 쓴 일기, 힘들 때마다 적었던 사고의 흐름들을 제출했다. 너무 프라이빗해서 민망하기도 하고, 예민하게 받아들일 수 있는 내용이라 걱정되기도 했다. 하지만 내가 성장하는 데에 있어 꼭 필요한 경험이었다. 그래서 해당 내용을 내 약한 모습이라고 받아들인다면 어쩔 수 없다고 생각했다. 

 

[3. 프리코스 목표 설정]

이전 기수에는 없었던 처음 등장한 문항이다. 나는 매주 코드리뷰를 하겠다고 적었으며, 구체적으로 어떻게 진행할 건지 적었다. 그리고 "리뷰어"로서의 목표와 "리뷰이"로서의 목표를 세웠다.

 

프리코스

 

깃허브 레포를 보면 알 수 있지만, 한 주 한 주가 지날수록 제출하는 사람 수가 적어진다. 4주차는 비공개 레포지토리 제출이었기에 1차 경쟁률을 정확히 알 수는 없다. 하지만 매 기수에서 4주차 과제가 가장 어렵고 이전 기수에 나오지 않았던 문제가 나오기 때문에 많은 사람들이 포기할 거라고 생각한다. 그래서 일단은 끝까지 완주하는 게 가장 중요하다. 

 

나는 디스코드에서 스터디를 구해서 11명의 사람들과 함께 스터디를 진행했다. (여담이지만 우리 스터디에서 5명이 합격했다.) 주로 어려움이 생기면 공유하고 어떤 식의 코드를 짰는지 설명하고 라이브로 코드리뷰 하는 방식으로 진행했다. 이외에도 나보다 코드를 잘 짠다고 생각이 드는 사람의 코드를 매 번 챙겨봤다.  

 

코드 리뷰를 무조건 많은 사람들과 주고받을 필요는 없다고 생각한다. 왜냐면 초심자들이 정말 많고, 만약 나도 초심자라면 여러 의견을 주고 받는게 오히려 혼란스러울 수 있다. 그래서 꼭 리뷰를 주고 받기 보다는 공통 피드백에 집중하고, 자기 기준 잘 한다고 생각하는 사람의 코드를 참고해서 그 분에게 리뷰 요청을 하거나 해당 구현의 이유를 물어보는 걸 추천한다. "프리코스를 이렇게 해야 합격"한다는 정설 같은 건 없다. 코드 리뷰를 한 번도 안해도 합격할 수도 있다.

 

나는 프리코스 당시에 인턴십과 졸업프로젝트를 병행하고 있었기 때문에 물리적으로 시간이 정말 부족했다. 그래서 한 달 간 매일 퇴근 후에 카페에 가서 마감 때까지 해야할 일들을 했다. 프리코스만 할 수 있는 상황이 아니었고, 졸프 개발이나 문서 작업이 정말 많았기 때문에 스트레스를 정말 많이 받았다. 

 

 

최종 코딩 테스트

프리코스가 끝나고 3주가 지났다. 

 

 

재택 근무 중 메일을 확인했다. 그리구 1차 합격이었따 ㅎ ㅎ

지원서가 가장 중요하다고 생각해서 열심히 쓰긴 했지만, 내 몰입 경험이 코치님들께 어떻게 전달될지 예측이 안됐기에 별 기대를 안했었다. 

 

결과가 나오기까지 3주라는 기간동안 최종 코딩테스트를 준비할 수도 있지만, 프리코스 기간 동안 너무 버닝을 해서 지치기도 했고 떨어질 수도 있기 때문에 발표가 나기 전까지 따로 준비는 하지 않았다. 

 

[코딩 테스트 준비]

월요일 3시 1차 합격자 발표 후 코테까지는 5일이라는 시간이 남았다. 월,화에는 졸프에서 급하게 내야하는 제출물이 있어 코테 준비를 하지 못했다. 그러니 남은 시간은 3일이었다. 

 

회사에 양해를 구해서 3일을 쉬었다. 그리고 학교 도서관에 가서 코테 준비를 했다.

 

최종 코테에서 1차적으로 중요한 건 테스트 코드를 통과하고 주어진 기능을 구현하는 것이다. 클린 코드, 공통 피드백에서 나온 이야기들..을 다 고려하다보면 정작 기능을 구현할 시간이 없다. 그래서 많은 합격 후기를 보면, 5시간 동안 클린코드를 무시하고 돌아가는 코드를 짜는 연습을 하는 걸 추천한다. 난 빠르게 코드를 짜는 연습보다는 5시간 내에 돌아가게 코드를 구현하기 위해 필요한 준비를 했다. 

 

이전 코테나 마지막 프리코스 문제를 풀어보면서 스스로에게 필요한 준비를 해나가는 게 가장 중요하다. 나는 4주차 프리코스 문제와 5, 6기 최종 코딩테스트를 풀며, 어느 부분에서 쓸 데 없이 우왕좌왕하고 시간 날려먹는지를 파악했다. 또한 실전에서 어떻게 화면을 세팅하고, 어떻게 순서대로 문제를 파악하고 기능을 구현해나갈지를 그려나갔다. 그리고 템플릿 코드를 모아둔 폴더에 입출력, 유효성 검사, 에러 처리에 대한 함수를 작성해갔다. 코드 짜는 시간을 줄이려면 템플릿 코드는 사실상 필수다. 7기 최종 코테에서는 chatgpt 사용을 제외한 구글링, 이전에 짠 코드를 참고하는 게 가능했다.

 

[최종 코딩테스트 당일]

아침에 친구랑 빵먹고 선릉 캠퍼스로 향했다.

안드로이드와 프론트엔드는 선릉 캠퍼스에서, 백엔드는 잠실 캠퍼스에서 최종 코테를 치렀다. 

 

찍은 사진이 이거밖에 없다..
칭구의 메세지 ...

나는 코딩테스트 시작 한 시간 전에 도착하는 걸 추천한다. (밥 먹고 이닦고 상쾌하게 시험 보면 좋으니.. ㅎㅎ) 그리고 화장실이 작아서 꽤 기다려야한다. 나는 시험장이 추워서 화장실에서 미리 챙겨온 옷을 껴입었더니 훨씬 나았다. 손도 시려웠어서 핫팩을 가져간게 좋은 선택이었다.

 

시험장에서 내가 사용할 수 있는 공간이 적다. 거의 대부분이 양 옆에 사람을 두고 테스트를 치러야한다. 7기에는 좌석이 지정되어 있어서 자리를 선택할 수 없었다. 지정 좌석제가 된 가장 큰 이유는 6기와 다르게 chatgpt 사용을 막았기 때문인 거 같다.

 

그렇게 최종 코테가 시작됐다..

 

5,6기 최종 코테가 쉽기도 했고, 이번엔 chatgpt를 사용할 수 없으니 그리 어렵지 않을 거라고 생각했다. 그런데 4주차 과제인 편의점보다는 약간 덜 복잡한 우테코 크루들의 출석 시스템을 만드는 문제가 나왔다. 

 

요구사항이 복잡해서 문제를 이해하는 것부터 어려웠다. "출석 확인" 워딩이 여태 출석한 내역을 확인한다는 느낌으로 다가왔는데 문제에서는 출석 쳌을 하는 거였다. 하도 출첵이라는 말을 쓰다보니 한국말인 출석 확인이 안 와닿았나보다. 

 

긴장이 하나도 안된 덕분에 5시간 동안 버닝을 했다. 너무 집중하다보니 갑자기 이게 왜 필요해서 구현하고 있었지?라는 생각이 들기도 했다. 함수화하면 좋을 것들도 함수화할 시간도 없었고.. date를 다루는 문제다보니 date 객체를 넘기면 해당 날짜의 날짜, 요일, 시간, 분을 전부 반환해주는 함수를 초반에 만들었으면 좋았을 것만 그럴 생각을 못해서 하나하나 반환하는 함수를 만들었다. 어떻게 구현하면 좋을까?라는 고민의 결과가 나오면 바로 적용해서 그냥 되는대로 막 했다 ㅋㅋ.. 

 

테스트 코드를 짜는 건 진작에 포기했고, 주어진 5개의 테스트케이스 중 4개를 통과하고 제출했다. 마지막에 왜 출석 수정 기능이 안되는지 이해를 못했다. 나중에 보니 출석 수정은 잘 되는데 출력에서 문제가 있었다. 반복문에서 특정 조건에 걸리면 continue를 해야하는데 return 을 하고 있었다;; 

 

다음 날 .. 혼자 리팩토링을 겁나하고 30분만에 모든 테케를 통과시킨 다음 우울해했다.. 이렇게 했으면 좋았을텐데 하는 생각들이 맴돌았지만 이미 배는 떠났다.. 

 

 

 

최종 합격

우테코 합격창

12월 27일 오후 3시.. 

최종 결과 때문에 수업에 집중을 하나도 못하고 있었는데, 기다리던 오후 3시가 돼도 메일이 안왔따..

 

그러다가 3시 7분쯤.. 휴대폰을 보니 메일이 와있었고 미리보기로 합격 축하 메세지가 떠있었다! 

 

열쩡 넘치는 크루들과 함께할 생각이 설렌다 ㅎㅎ

조급해하기보다는 후회없이 열심히하자!   

'회고' 카테고리의 다른 글

개발 공부 1년차 & 인턴 3개월 차의 회고  (3) 2024.10.26

블로그의 정보

유명한 담벼락

담담이담

활동하기