[우테코] 지원 이야기 + 프리코스 준비

비얌·2022년 10월 26일
46
post-thumbnail

개요

최근 우아한테크코스 5기에 지원하게 되었다.

<우아한테크코스란?>
배달의 민족 서비스를 제공하는 회사인 우아한 형제들에서 진행하는 개발자 양성 프로그램이다. 기존에는 웹 프론트엔드와 웹 백엔드 트랙이만 있었으나 이번 5기에서는 모바일 안드로이드 트랙이 추가되었다.


나는 '웹 프론트엔드' 트랙에 지원하게 되었는데, 5기 선발 과정 및 일정은 다음과 같다. 오늘 오후 3시에 프리코스 1주 차 미션이 공개되었기 때문에 나는 현재 프리코스 단계에 있는 셈이다.

<5기 선발 과정 및 일정>
1. 서류 지원(10.17.월 ~ 10.24.월)
2. 프리코스(10.26.수 ~ 11.22.화) 👈 현재 위치
3. 최종 코딩테스트(12.17.토)
4. 최종 합격자 발표(12.28.수)


이번 포스팅에서는 크게 두 가지, '우아한테크코스에 지원하게 된 이야기' '프리코스를 준비하는 과정'에 대해 다뤄보려고 한다.

오늘 포스팅의 목차는 아래와 같다!

<목차>
1. 우아한테크코스 지원 이야기
1-1. 지원하게 된 계기
1-2. 온라인 설명회
1-3. 나의 지원서
2. 프리코스 준비
2-1. 깃허브 레포 만들고 관리하기
2-2. 미션 예습
2-3. 프리코스 OT
2-4. 과제 제출 연습하기(풀 리퀘스트)



1. 우아한테크코스 지원 이야기

1-1. 지원하게 된 계기

사실 내가 우아한테크코스에 지원하리라고는 상상도 못 했다. 왜냐하면 이전부터 이 프로그램이 얼마나 경쟁률이 센지 알고 있었고, 또 선발 과정에서 코딩테스트를 본다는 것도 알고 있었기 때문이다. (나는 코딩테스트에 자신이 없다..)

그러던 도중, 참여 중인 개발자 커뮤니티에서 이번 기수부터는 프리코스에 참가하기 위한 코딩테스트가 없어졌다는 사실을 알게 되었고, 그래서 지원하게 되었다. 사실 지원하기 전까지는 잘 몰랐는데, 지원하며 지원서를 쓰고, 온라인 설명회를 들으면서 이 프로그램에 대해 자세히 알게 되었다.


1-2. 온라인 설명회

우아한테크코스 5기의 온라인 설명회는 라이브로 유튜브에서 무려 2시간 넘게 진행되었다. 나는 온라인 설명회를 듣고 노션에 이를 정리해 놓기도 했다.

설명회에서는 5기 선발 과정 및 일정, 인재상, 교육 철학, 선발 특이점 등에 대한 정보를 얻을 수 있었다. 설명회 마지막에는 실시간으로 채팅을 통해 질문을 받아주시기도 했다.

정말 다 좋았는데, 가장 매료되었던 부분은 4기 교육생들의 브이로그 부분이었다. 짝 프로그래밍을 하고, 의견을 자유롭게 나누고, 멘토(캡틴)와 수다를 떠는 모습이 너무 재미있어 보였다. 브이로그를 보며 잡담도 경쟁력이라는 우아한 형제들의 문화가 생각나기도 했다. 그래서 이 온라인 설명회를 듣고 지원을 굳게 결심하게 되었다.

사실 웹 프론트엔드 트랙은 미션을 모두 바닐라 자바스크립트로 구현해야 한다고 해서 지원할지 많이 고민하기도 했다.(특히 최종 코딩테스트 언어가 자바스크립트 하나로 정해져서)
나는 프론트엔드를 공부하면서도 코딩테스트를 연습할 때 익숙한 첫 언어인 파이썬을 써왔기 때문이다. 그래서 이전 포스팅인 [JS] 움직이는 글자 구현하기도 사실 이에 대비하고자 자바스크립트를 거의 처음 공부해 본 것이었다. (참담하게도 너무 어려웠지만!!!)
하여튼 자바스크립트에 익숙하지 않아 항상 쓰기가 무서웠는데(안 쓰니까 더 모르게 되는 악순환이 발생함) 프리코스 미션을 수행하는 지금은 어떻게든 구현은 하고 있다...! 하루 종일 붙들고 있으면서 계속 쓰니까 조금씩 익숙해지고 있는 것 같다😉


1-3. 나의 지원서

지원서는 일주일 내내 썼다. 지원 시작일부터 마감일까지 딱 일주일 정도 시간이 있었던 것 같은데, 나는 지원 시작일부터 마감 전날까지 죽어라 썼다.

지원서를 다 쓰고는 지인 두 분에게 첨삭을 받고 수정하여 최종적으로 제출했다.

지원서의 문항은 총 5문항 + URL 기입 문항(4번 문항인 몰입 경험을 입증하하여라), 총 6문항으로 이루어져 있었다. 정말 오랫동안 쓰고 퇴고도 많이 했다.

나는 각각 뭐라고 썼는지 알아보자.


✅ 1. 고등학교/대학교 전공을 포함하여 프로그래밍 교육 이력을 작성해 주세요. (200자 이내)

  • “학부 비전공 / 외부 교육 수료”
  • 학부가 비전공이라서 비전공이라고 기재했고, 프로그래밍 관련 교육은..아닌 것 같지만 일단 들은 IT 관련 교육이 있어서 기재했다. 그리고 올해 수료한 개발 동아리도 기재했다.

✅ 2. 프로그래밍 학습 과정은?(1000자 이내)

  • 프론트엔드 분야에 관심을 가지게 된 계기와 개발 동아리에서 학습한 내용을 기재했다.
  • 올해 스터디를 4개 진행하고 있으며 그중 하나는 내가 스터디 장으로서 어떤 가치관을 갖고 스터디를 운영하고 있는지를 기재했다.

✅ 3. 프로그래머가 되려는 이유는 무엇인가요?(1000자 이내)

  • 어느 프로젝트 경험을 통해 프로그래머가 되고 싶다는 생각을 했다고 적었다. (작년에 처음으로 프로젝트를 경험했는데, 매우 즐겁고 보람 있었던 기억으로 남음)
  • 프로그래머가 되어 최종적으로 하고 싶은 일에 대해서 적었다. 현재 학부 전공과 연관 지어 적었다.

✅ 4. 마음이 끌리는 무엇인가에 긴시간 동안 몰입해 본 경험이 있나요?(1000자 이내)

  • 작년에 한 분야에 1년간 완전히 몰입했던 경험이 있었는데, 그걸 적었다.
  • 몰입한 경험으로 무엇을 성취했는지도 짧게 적었다.

✅ 5. 우아한테크코스에 참여하려는 이유는 무엇인가요?(500자)

  • 우아한테크코스를 만드신 박재성 님의 인터뷰를 언급했다.
  • 단순히 개발만 배우는 것이 아니라 끊임없이 소통하고 즐겁게 일하는 문화 안에서 전문적인 개발 지식과 더불어 소프트스킬을 배우고 싶다고 했다.

✅ URL

아래와 같이 URL을 정리한 노션 페이지의 주소를 첨부했다.
(부끄러워서 일부분은 모자이크 처리함)



2. 프리코스 준비

드디어 일주일간 쓰던 지원서를 마감 전에 제출했다. 그러고 보니 이틀 뒤가 벌써 프리코스 시작일이었다. 그래서 작년에는 프리코스를 어떻게 준비했는지 미리 보고 익히려고 했다.

그런데.. 정말 과제를 제출하는 방법부터 매주의 미션까지 너무나도 어려워 보이는 것이다. 게다가 지켜야 될 것도 너무 많아서 머릿속이 하얘졌다. 그래서 생각한 해결 방법은 바로 하나하나 내 손으로 다시 정리를 해보는 것이었다.


2-1. 깃허브 레포 만들고 관리하기

과거 우아한테크코스 4기의 공식 깃허브를 보고 vscode에서 md파일을 만들어 똑같이 글자들을 따라치면서 내용을 익히기 시작했다. 모르는 부분이 생기면 검색하거나 커뮤니티에 물어본 후 설명을 덧붙이거나, 읽어보면 좋을 것 같은 링크를 추가하기도 했다. 그렇게 프리코스 설명(자료 추가).md가 완성되었다! 현재는 프리코스 OT를 듣고 정리한 내용까지 업로드된 상태이다.


2-2. 미션 예습하기

지원서를 내고 프리코스에 대해 위에서처럼 정리한 뒤, 그제야 미션을 예습할 시간이 생겼다. 당연히 지금까지처럼 1주 차 미션으로는 숫자 야구 게임이 나올 줄 알고 이를 구현해보기 시작했다. 일단 깃허브에 해당 문제 파일을 만들어 놓고 구현할 기능 목록을 적어놓고, 참고한 문서와 새로 알게 된 것, 현재까지 구현한 내용과 다음에 해야 할 것 등을 정리했다.

실제 프리코스에서 미션을 받는다면 이와 같은 형식으로 정리해야겠다고 생각했다.


2-3. 프리코스 OT

오늘 2pm에 프리코스 OT가 한 시간 정도 있었다. 오티 내용은 아래와 같다. 특별히 정리하겠다고 한 건 아니고 중요해 보이는 내용을 그대로 받아적은 거라서 양이 좀 많다.

오티를 듣고, 본 코스에 꼭 붙어야겠다는 생각이 조금 바뀌었다. 붙으면 당연히 더 좋겠지만, 붙지 않더라도 최선을 다해보는 경험을 하고 싶어졌다. 최선을 다하기에 너무 좋은 환경이기 때문이다.

다음주에 생길 프리코스 커뮤니티에서 3300여 명의 코드를 구경할 수 있고, 코드 리뷰를 할 수도, 받을 수도 있으며 자유롭게 토론할 수 있다. 이런 환경을 항상 꿈꿔왔기에 우아한테크코스 프리코스에 참여할 기회를 가진 것에 정말 감사하다.

<OT 내용>

  • 우아한테크코스는 철저한 현장 지향형 교육이다.
  • 우아한테크코스의 교육 기간인 10개월도 현장에서 필요로 하는 능력을 모두 개발하기 어렵기 때문에 일정 수준 이상의 프로그래밍 능력을 갖춘 사람을 뽑으려고 한다(3~6개월 독학 수준)
  • 프리코스란?
    - 본 과정을 맛볼 수 있음(강의 최소화)
    - 읽기 좋고 유지보수하기 좋은 코드를 짜는 경험, 테스트를 만들어 보는 경험을 할 수 있게 해준다. (설계 역량, 추상화 역량 -> 이걸 처음 해보는 지원자들이 많다.)
    - 과제들의 요구사항만 나갈 것. 뭘 공부해라 이런 거 안 알려줌. 스스로 문제를 해결하는 경험을 쌓을 수 있도록 -> 자기 주도적 역량을 키울 수 있다.
    - 본 코스도 비슷하다. 강의는 3~4시간 밖에 안되고 나머지는 크루들끼리 스터디, 짝 프로그래밍 등 자기주도적 학습 역량을 키운다.
  • 이번에 3,300명이 함께 하며 이제 프리코스 커뮤니티라는 것이 생긴다.
    - 함께 성장할 수 있는 공간.
    - 3,300명이 모이는 게 쉬운 일이 아니기 때문에 이 기회를 이용하려고 한다.
    - 다만, 1주 차 미션이 끝나고 나서야 1주 차에 대한 커뮤니티가 열린다!(이미 마감한 미션에 대해서만 활동한다)
    - 함께하는 것도 중요하지만 스스로 해보는 것이 더 중요하기 때문.
    - 그래야 최종 코딩테스트도 잘 볼 수 있음
    - 스스로 문제를 계속 고민해보면서 일단 풀긴 풀고, 나중에 더 나은 코드를 보고 지원자들과 토론한다면 얻는 게 많을 것이다
    - 2주 차 첫번째 날부터 커뮤니티는 시작된다.
    - 깃헙 디스커션이라는 곳도 활성화 될 것이다.
  • 경쟁보다는 협업!하는 가치관을 미리 공유하는 것. 프리코스는 본 교육의 맛보기 정도!(상호 협력, 지식 공유, 소프트스킬)
  • 성장을 가장 큰 목적으로 두고 참가하자!
  • <커뮤니티 구성>
    - peer 리뷰: 코드를 지원자들이 리뷰해주는 것
    - 아고라: 학습에 관련한 토론, 질의응답
    - 학습 컨텐츠 공유: 스터디를 만든다든지 등을 할 수 있다.
  • 1주 차 미션: 온보딩의 성격으로 4주 차 동안 이렇게 진행될 것이다 하고 예고하는 수준(낮은 난이도) + 언어 자체에 익숙해지는 기간(프론트 트랙은 자바스크립트) + 깃에 익숙해지는 기간 + 문제를 해결하기 위한 함수를 만드는데 익숙해지는 기간
  • 소프트 스킬은 '함께'여야 기를 수 있다. 우리가 경험한 협업은 진정한 협업이 아니다(같은 프로젝트여도 너는 프론트엔드, 너는 PPT, 너는 백엔드.. 이렇게만 나누고 프로젝트를 진행한다면 이건 역할분담임) 우테코에서는 찐한 협업을 하게 된다.
  • 최종 코딩테스트도 인터넷 검색이 가능하다. 문제 해결을 위한 역량을 보려고 하는 것이기 때문.
  • 4주 동안 못잔다고 죽지는 않는다. 모든 시간을 여기에 투자해봐라.(예: 기말 포기) 4주간 온전히 몰입한다면 엄청난 성장을 할 것이다. 불합격 하더라도 남는게 있다. "잠을 줄이십시오"
  • 느리더라도 묵묵히 걸어가라 자신을 믿고!
  • 경험이 적더라도 할 수 는 있다. 근데 힘들 수는 있다.

2-4. 과제 제출 연습하기(풀 리퀘스트)

과제 제출에 관해서는 우아한테크코스 공식 깃허브를 보고 한 땀 한 땀 적으면서 공부해봤지만, 포크 후 브랜치 생성 후 코드 작성 후 풀 리퀘스트 날리는 건 정말 처음 해보는 거라서... 너무 어려울 것 같아서 긴장됐다. 내가.. 과제를 다 끝냈는데도 제출을 못 해서 다음 2주 차 미션에 참가하지 못하면 어쩌지?? 하는 걱정이 앞섰고, 그래서 지인의 깃허브 레포에 실험해보기로 했다.

우아한테크코스에서 제공한 과제 제출 방법을 보면, 정말 자세하게 잘 설명하고 있긴 하다. 그래도 걱정이 되어서 다른 사람의 레포에 실험해보기로 한 것이다.

과정은 다음과 같다.
1번째) 1주 차 미션 레포를 내 계정으로 fork한다.

2번째) fork한 저장소를 내 컴퓨터로 clone한다. 아래와 같은 형식으로 하는데, 레포의 주소를 복사하여 커맨드 창에 git clone 복사한 주소를 입력해도 해도 되는 것 같다.

 git clone https://github.com/{본인_아이디}/{저장소 아이디}.git
ex) git clone https://github.com/woowacourse/java-baseball.git

3번째) 나의 브랜치 생성하기
내 깃허브 아이디로 fork한 레포에 브랜치를 생성한다.

git checkout -b {본인 깃허브 아이디}
ex) git checkout -b javajigi

4번째) 내 컴퓨터에 clone된 파일을 vscode(웹 프론트)에서 연다.

5번째) 파일을 수정하여 기능을 구현한다.

6번째) 기능 구현 후 add, commit을 한다. (각 기능 별로 commit을 하며, 이때 commit 규칙을 지켜야 한다.)

7번째) 내 원격 저장소에 올리기 위해 push origin "내 브랜치(내 깃허브 아이디)"를 입력한다.

git push origin 브랜치이름
ex) git push origin javajigi

8번째) 원본 저장소에 Pull Request 보내기
이제 코딩한 과제를 원본 저장소에 Pull Request 날려야 한다. 미션을 구현하며 느낀 점 등과 함꼐 Pull Request를 보낸다.

9번째) 깃허브에 Pull Request를 날리는 것뿐 아니라, 우아한테크코스 지원 플랫폼에도 과제를 제출해야 제출이 끝나니 이 점을 유의하자.


Pull Request를 보내면, 아래와 같이 Pull Request 란에서 내가 보낸 메시지를 볼 수 있다.

그리고 가장 궁금했던 부분인데, 여기서 fork하고 clone해서 커밋한 내용이 모두 표시되어 확인할 수 있다.

댓글도 달아봤다. (Pull Request 내용은 4기 지원자의 Pull Request를 복붙했다)

그리고 이건 그냥 재미로 해봤는데, 머지도 해봤다. 파일이 성공적으로 합쳐졌다!



🐹 회고

엄청나게 글이 길어진 것 같은데.. 할튼!! 프리코스를 시작하지도 않았는데 얻은 게 많은 것 같다. 일단 깃허브와 조금 더 친해진 기분이다. 사실 전에 풀 리퀘스트를 보내 볼 기회는 있었지만 그게 뭔지 잘 모르고 했었는데, 지금은 우아한테크코스 측이 확인할 수 있게 나의 코드를 보낸다는 느낌이 뭔지 알 것 같다!!

앞으로 4주간 포기하지 않고 프리코스를 진행하면 얼마나 배워갈 것이 많을지 상상이 되지 않는다. 포기하지 말고, 프리코스를 1순위로 놓고 참여할 것이다.

그리고, 미션을 해결하며 생긴 궁금증, 구현 방법, 알게된 점, 회고 등을 정리해서 블로그에 매주 포스팅하자. 앞으로도 화이팅!!!!!!!!

profile
🐹강화하고 싶은 기억을 기록하고 공유하자🐹

6개의 댓글

comment-user-thumbnail
2022년 10월 26일

멋져요! 화이팅이에요~

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

넘나 정성스러운 글... 잘 봤습니다 앞으로 더 기대되네요!🤓

1개의 답글
comment-user-thumbnail
2022년 11월 2일

정말 멋져요~ 그 모습 존경합니다 :)

1개의 답글