[우아한테크코스 백엔드 4기] 지원 및 프리코스 후기 & 팁

헌치·2022년 1월 4일
39

우아한테크코스

목록 보기
4/30
post-thumbnail

안녕하세요, 헌치입니다!😉
이번 4기에 합격하게 되면서, 관련 리뷰를 요청하시는 분들이 계시고
저도 기록으로 남기고 싶어 이렇게 글을 씁니다.

지원 및 프리코스 기간 동안 막막하고 궁금한게 많으실 5기 이후 기수 지원자 분들에게 도움이 되었으면 합니다!

✨🎋홍보🎋✨

우아한테크코스 익명 커뮤니티 '속닥속닥'에서 5기를 위한 예비 크루 게시판을 오픈했습니다!🎉

https://sokdaksokdak.com/board/5

우테코와 관련된 질문, 잡담을 자유롭게 올려주세요! 기존 기수들의 정성어린 댓글과 관심을 드리겠습니다😄

1. 📝 지원 및 1차 코딩테스트

1) ✒ 자기소개서

  • 3일에 걸쳐 지인들의 피드백을 들으며 작성했습니다.
  • 대규모 소프트웨어 제작 경험이 없었던 만큼, 개발 외적인 부분에서의 발자취를 중심으로 썼습니다.
  • 가독성을 고려했고 간결한 문장을 쓰려 노력했습니다.

[1] 대학교 전공 이름

  • 포맷에 맞게 작성했습니다.

🌱 Opinion

온라인 설명회 영상을 보면

전공자 여부나 부트캠프나 국비 과정 수강 경험이 메리트가 되진 않을 것 같습니다.

코스 안에서 배우는 것들과 중복될 수도 있고, 균등한 기회를 위해서입니다.

[2] 프로그래밍 학습 과정과 현재 자신이 생각하는 역량은?

  • 서두에는 집중력이 좋다는 언급 후 뒷받침할 예시를 들었습니다.
  • 이후 프로그래밍 학습과정을 언어와 배운 요소들(CRUD, REST api...)을 포함해 스토리텔링 형식으로 작성했습니다.
  • 막단에는 학습한 언어들을 요약했고 한번 더 역량을 어필했습니다.

🌱 Opinion

우테코에서 원하는 인재는 완성되고 이미 코딩을 잘하는 사람이 아닌, 발전가능성이 있고 프로그래밍을 향한 열정이 있는 사람인 것 같습니다.(적어도 설명회에 따르면 그렇습니다.)

만약 저처럼 프로그래밍 입문 후 기간이 길지 않으시더라도(6개월~1년) 겁먹지 마시고 솔직하게 작성해주시면 메리트가 될 것 같습니다.

역량 부분도 기술스택에 관련된 것 뿐 아니라

정성적 요소들(끈기, 집중력, 지적호기심...) 들도 증명 가능한 예시들과 함께 제출해주시면 좋은 평가를 받을 수 있을 거라 생각합니다.

[3] 프로그래머가 되려는 이유는 무엇인가요?

  • 서두에는 프로그래밍의 매력(키포인트)에 대해 적고 즐거웠던 일들을 구체적 사례로 제시했습니다.
  • 이후 그중에서도 '백엔드 프로그래밍' 에 관심 갖게 된 계기를 적었습니다.
  • 마지막으로는 프로그래밍을 통해 사회적 공헌을 하고 싶다고 적고, 관련해 생각해 온 프로그래밍 아이디어/소망들을 3개 정도 제시했습니다.

🌱 Opinion

프로그래머가 되려는 이유는 지원자들마다 큰 차이가 없습니다.
(취업을 위해, 적성에 맞아서, 성취감 등...)

그래서 저의 경우 프로그래밍을 통해 세상이 어떻게 변할 것인지, 기술로 세상에 어떤 기여를 할 수 있는지 고민했던 것을 녹여 작성했습니다.

또한, 설명회에서 프로그래밍으로 만들고 싶은 소프트웨어 영역을 꼭 작성하라 했던 것으로 기억합니다.

어떤 비전을 갖고 있는 사람인지 역시 중요한 평가요소일 수 있을 것 같습니다.

[4] 마음이 끌리는 무엇인가에 긴 시간 동안 몰입해 본 경험이 있나요?

  • 서두에는 19년도부터 2년가량 진행한 게임 제작 프로젝트를 소개했습니다.
  • 해당 프로젝트에서 했던 작업들과 개인적 성과를 작성했습니다.
  • 프로젝트 동안 겪었던 역경들을 솔직하게 적었고(해이해짐, 갈등...), 해결하기 위한 노력, 결과들을 적었습니다.
  • 마지막으로 해당 프로젝트를 끝낼 수 있었던 나름의 키포인트를 적었습니다.

🌱 Opinion

되도록 10개월 이상의 긴 시간동안 했던 경험을 쓰면 좋을 것 같습니다.

그리고 설명회를 보면, 다른 분들이 했을 경험들(게임, 연애, 수험생활, 운동 등)이라면 특별한 성과가 있는게 아닐 시 크게 어필이 되지 않는 것 같습니다.

(물론 세계 대회를 나갔거나, 글을 맛깔내게 쓰셨거나 3대 500을 찍었다면 얘기가 다를 수는 있을 것 같습니다. 그런 사례로 1차 합격하신 분들은 몇 분 계셨습니다.)

또한 비개발적 영역이라도 상관없다고 생각합니다.
저의 경우 게임 개발 프로젝트에서 그래픽, 사운드를 담당했습니다. 프로그래밍 관련 경험은 아니었습니다.

만약 다음 기수 지원을 고려하시는 분이 계신다면 지금부터 라도 자신만의 몰입 경험을 만들어가시면 좋을 것 같습니다!

[5] 우아한테크코스에 참여하려는 이유는 무엇인가요?

  • 이전에 했던 대외활동에서 배민과 연이 닿은 이후 우테코를 알게 되었고, 계속 관심 가져왔음을 어필했습니다.
  • 코로나 시국, 문과생 복전자이기에 겪는 어려움을 적었습니다.
  • 우테코를 향한 기대감, 얻고 싶은 역량들, 우테코가 나와 잘 맞는 이유들을 썼습니다.

🌱 Opinion

우테코에서는 어떤 사람을 참여시키고 싶을지 염두했습니다.

다른 부트캠프나 취업의 길보다 우테코가 필요한 사람임을 드러내려 했습니다.

우테코 홈페이지로 알 수 있는 커리큘럼과 여러 장점들, 이전 기수 분들의 생생한 후기들을 참고했습니다.

[6] 📎 추가 링크

노션 링크

  • 벨로그에 링크된 포트폴리오와 같은 버전입니다.
  • 포맷이 깔끔하지는 않습니다. 기존에 다른 기업 인턴 등에서 포트폴리오를 제출해본 경험도 없고, 피드백을 받은 적도 없으니 참고로만 봐주시면 될 것 같습니다.
  • 자소서에서 썼던 경험들에 대한 자료를 넣었습니다.
  • 깃허브가 정돈 되어있지 않은 채로 제출해 아쉬웠습니다. 이 글을 읽으시는 분들은 주요 깃허브 레포지토리들의 README.md를 작성하시면 좋을 것 같습니다.

2) 🧨 1차 코딩테스트

[1] ⚙ 준비과정

  • 파이썬으로 코딩 테스트를 준비했습니다.
  • 프로그래머스 문제를 중심적으로 풀었습니다.
  • 노션 정리 링크

🌱 Opinion

당시 백준 실버이고 관련 알고리즘 테스트를 많이 풀어보진 못했습니다. 또한 프로그래머스로 코딩테스트를 본다는 얘기를 들었기 때문에 해당 플랫폼에 익숙해질 필요성을 느꼈습니다.

일주일 가량의 기간 동안 프로그래머스의 모든 레벨1 문제와 일부 레벨2 문제를 풀었고, 전날 다시한번 모든 레벨1 문제들을 풀었습니다.

또한 노션에 문법들과 주요 알고리즘을 정리하고 반복적으로 복습했습니다.

[2] 📩 1차 코딩테스트

  • 총 7문제로, 프로그래머스에서 진행되었습니다.
  • 마지막 문제를 제외하면 알고리즘 심화 지식은 필요하지 않았습니다.
  • 대신 구현 문제의 조건 확인이 중요했습니다.
  • 제출 시 테스트 통과 여부를 알 수 없었기 때문에 자체적인 예외 확인이 필요했습니다. (지옥의 호치민...)
  • 6솔로 추청됩니다.

🌱 Opinion

상당히 쉬웠습니다. 기업 코테를 준비하시는 분들이라면 시간 내에 어렵지 않게 푸실 수 있으실거라 생각합니다.

또한 특정 개수 이상으로 맞으면(4~5솔 추정)
더 맞더라도 가산점이 없는 것 같습니다.

사실 문제들의 난이도가 크게 어렵지 않았던 만큼, 해당 코테는 어느 정도의 기초 실력을 갖고 있다는 것을 판가름하는 기준으로만 작용한 것 같습니다.

1차 코테는 말 그대로 최저합격 기준이며, 자소서를 중심적으로 보는 것 같습니다.

저작권 때문에 문제 공유는 힘들지만 프로그래머스 알고리즘 1~2레벨 문제 중심으로 풀면 충분히 대비 가능합니다.

2. 🎞 프리코스 및 최종 코딩테스트

1) 📚 프리코스

[1] ✒ 후기

(프리코스 과정 및 공부한 것들은 이전 게시글들을 참고해주세요.)

객체 지향 강의를 듣고 홀로 간단한 프로그램이나 게임을 만드는 동안
깨끗하고 잘 작성된 코드를 짜려 노력한 적이 별로 없었습니다.

설령 노력하더라도, 코드의 가독성보다는 단순히 줄 수나 퍼포먼스 요소에만 신경을 썼고 그 코드를 다시 보게 될 저나 다른 사람들의 편의를 생각하지 못했습니다. 코드를 읽는 것이 어려워지니 바로 직전에 쓴 코드도 해독하기 힘들었던 적 역시 많았습니다. 그래서 프리코스 기간 동안 쉽지 않은 도전이었지만 그만큼 많은 것을 배워나갈 수 있었던 시간이었습니다.

여러 컨벤션과 API를 배우고
TDD, SOLID, MVC 등 셀 수 없이 많은 설계 방법들을 배우고
코드 안에서 적용시키는 시간이었습니다.

또한 단순히 강의나 책에서 떠 먹여주는 방식이 아니라, 문제와 피드백을 분석해보며 스스로 고민하고 답을 찾아나서는 방식으로 진행되었습니다. 방향성을 잡고 나아갈 용기를 얻었습니다.

3주간의 긴 기간 때문에 지원을 망설이시는 분이 계실 거라고 생각합니다. 그러나 최종합격 여부와 관계없이, 기존 외부교육 경험이 없는 프로그래머 꿈나무들에게 정말 좋은 경험이 될 거라 생각합니다. 주저말고 지원하세요!

[2] 🌱 Opinion

3주 간의 과정 속 여러 메일들을 받았고, 그 중 프리코스 과정에 대한 후기를 올리는 것을 장려하는 내용이 있었습니다. 저 역시 3주간 열심히 블로그에 후기를 남겼습니다. 6일 가량 열심히 과제를 진행 한 후 마지막 날은 항상 후기를 작성했습니다.

이를 통해

  1. 이제 막 배워 낮선 내용들을 잊지 않을 수 있었습니다.
  2. 블로그 글을 작성하는 동안 새로운 인사이트가 떠올랐습니다.
  3. 다른 사람들이 제가 공부한 내용들을 확인하고 실력/성실성 등을 가늠할 수 있었습니다.
  4. 프로젝트 동료들과 소통할 때 블로그 링크를 활용하기 좋았습니다.
  5. 다 쓴 블로그 글을 보며 뿌듯했습니다.

처음에는 글쓸 시간에 제출할 과제 검수나 더 하는게 좋지 않을까 싶었는데, 오히려 쌓여가는 기록들이 이후 과제들의 진행에 스퍼드를 내줬습니다. 또한 제출 후 다른 지원자 분들의 블로그를 보면서 몰랐던 부분들과 새로운 개념들을 알게 되기도 했습니다. 프리코스 기간 동안 기술블로그나 노션 등에 과정을 기록하는 것을 추천드립니다!

[3] 📎 참고문서

프리코스 참고자료 노션

참고했던 이전기수 회고 문서들, 여러 유용한 링크들을 제 나름대로 정리했습니다.

기술블로그 관련 링크
처음 벨로그를 만들 때 고민했던 것들이 해당 포스팅의 도움으로 많이 해결됐습니다.

2) 🧨 최종 코딩테스트

[1] ⚙ 준비 과정

최종 코딩테스트는 3주차 과제와 비슷한 난이도이며 5시간 동안 진행될 것이라 안내되었습니다.

아무래도 7일동안 코딩하던 것을 5시간만에 제대로 구현해내는 것은 거의 불가능하다고 생각했습니다. 따라서 되도록 모든 기능을 구현하되, 리팩토링이나 테스트코드 작성은 포기하는 것을 목표로 잡았습니다.

시험 적응을 위해 테스트 일자 3일 전부터 하루에 하나씩 이전기수의 3주차 문제들을 5시간 내에 푸는 연습을 해봤습니다.

문제들은 우테코 깃허브에서 찾아보실 수 있습니다. 일부 문제들은 README.md가 써져있지 않았는데, 구글링을 하고 제 스스로 문제조건을 만들어가며 풀었습니다.

[2] 📝 시험 과정

  • 시험은 기존 과제 제출 방식과 동일하게 진행되었습니다.
  • 부정행위 방지를 위해 핸드폰, 노트북 2개 모두 zoom을 켜 화면을 세팅했습니다.
  • 난이도는 개인적으로 이번 3주차 과제보다 어려웠습니다.

우테코의 최종 코딩테스트는 항상 새로운 유틸 기능을 사용하도록 세팅되어 있는 것 같습니다. 이번에는 파일입출력 함수를 이용했습니다.

이때 파일 경로를 절대경로가 아닌 상대경로로 설정해야 했는데, 처음이다보니 기본 주소('./")가 어디인지 몰라 1시간 가량을 헤맸습니다.

알고보니 기본 주소는 코드가 있는 자바 파일(현재경로)가 아닌, 전체 파일이 들어있는 root 폴더였습니다. 해당 루트폴더의 폴더 및 파일을 확인하는 함수(listFiles())를 이용해 겨우 알아냈습니다.

이 시간동안 많이 멘붕했고, 그래서 이후 페이매칭의 구체적인 요구사항
1. 같은 레벨에서 이미 페어로 만난적이 있는 크루끼리 다시 페어로 매칭 된다면 크루 목록의 순서를 다시 랜덤으로 섞어서 매칭을 시도한다.
2. 3회 시도까지 매칭이 되지 않거나 매칭을 할 수 있는 경우의 수가 없으면 에러 메시지를 출력한다.
을 반영하지 못한 채 제출했습니다.

그래도 마지막 30분 동안 정신차리고 프로그램 기본 기능들의 실행이 가능하도록 코딩했습니다. 프로그래밍 요구사항에서 함수 길이 제한(15라인)을 제외한 사항들은 지켰습니다.

[3] 🧧 시험 후기

1. 꼭 올구현이 아니어도 된다

코딩테스트를 본 후 다른 분들의 후기를 찾아봤는데 막상 올구현을 하신 분들은 많이 없었습니다.(5분의 1 정도였습니다.)

비슷한 이유로 시간을 쓰신 분들도 많으셨고 우테코에서 제공한 테스트코드가 돌아가지 않는 분들도 계셨습니다.

결과적으로 제 코드로도 최종선발된 것을 생각해보면 시간적 여유가 없으실 것 같다면 시간 내 구현할 수 있는 부분들 중심으로, 클린코드, README나 commit 단위 등에 신경쓰며 완성도를 높이는 것도 방법일 수 있을 것 같습니다. (물론 코딩테스트 구현사항대로 전부 구현하는게 베스트입니다.)

2. 코테 대비자료 만들기

또한 최종코테 전에 당황하지 않도록 상황별 대응 방법들을 정리해도 좋을 것 같습니다.

저의 경우 최종코테에 대비해 노션을 만들었습니다. 안에는 일정, 초기세팅, 제출방법, 코드포맷 등 여러 정보들을 넣어뒀습니다.

테스트 동안 멘탈이 안좋을 때, 해당 노션 속 항목들을 참고하고 따라하면서 마음을 다잡을 수 있었습니다. 시간도 많이 단축되었고요.

[4] 📎 참고문서

최종 코딩테스트 대비 노션 : 위에 언급한 코테 전에 만들어본 대비 자료 입니다.

이전 기수 문제 제출

1.지하철노선도 깃허브
2.블랙잭 깃허브
3.치킨집 POS 깃허브
최종코테 대비로 풀어본 이전기수 과제들 입니다.

4기 최종 코딩테스트 제출

페어매칭 깃허브 : 제출한 코드입니다.

👀 글을 마치며

2개월 전, 처음 자소서와 코딩테스트를 준비하며, 그리고 이후 프리코스를 진행하며 불안해 이것저것 찾아보던 때가 생각나네요.

해당 게시글이 우테코 합격을 바라는 많은 분들에게 도움이 되었으면 하는 바람입니다.

관련해 궁금하신 사항이 있으시면 댓글이나 벨로그에 링크된 이메일로 문의주시면 답변드리겠습니다.

읽어주셔서 감사합니다! 좋은 하루되세요!😉

profile
🌱 함께 자라는 중입니다 🚀 rerub0831@gmail.com

6개의 댓글

comment-user-thumbnail
2022년 3월 15일

와.. 정리 너무 잘해주셔서 감사합니다.. 5기 지원 예정인데 많이 참고하겠습니다! 남은 과정도 화이팅하세요!

1개의 답글
comment-user-thumbnail
2022년 10월 18일

많은 도움 됐습니다 ㅠㅠ 너무 정성스럽게 작성해주셔서 댓글을 안달고 갈 수가 없었어요 감사합니다 !!!!!!! :):)

답글 달기
comment-user-thumbnail
2022년 12월 16일

내일 5기 최종 코테를 앞두고 있습니다. 꼭 우테코에 합류하고 싶네요..! 좋은 글 감사합니다.

답글 달기