Post

[회고] 프리코스를 마치며

4주간의 프리코스를 마치며

지원

졸업 후 부트캠프를 가야겠다고 생각하고 몇곳의 부트캠프를 지원했고 우테코 역시 우선순위에 있었다. 하지만 우테코는 서울에서 진행하는 점, 지원금이 나오는 부트캠프도 있는 반면에 우테코는 자체적인 지원금은 없는 점등 처음에는 여러곳을 붙으면 내가 우테코를 가게 될까? 하는 생각이 있었다. (김칫국이지만 언제나 미래는 생각해두는게 좋다고 생각한다.) 결론적으로는 생각이 바꼈다. 지금은 가장 가고 싶은 곳이 우테코이다. 프리코스를 하는 과정중에 많은 사람들을 만나 많은 것들을 배웠고, 성장 이라는 목표만 본다면 우테코가 가장 적합하다고 생각한다.

프리코스 또한 우테코의 선발과정 중에 하나로 생각했다.

여기는 선발과정이 특이하네?

이런 생각을 가지고 지원했던 것 같다. 하지만 프리코스를 진행하는 과정에서 내가 얼마나 부족한지, 내가 앞으로 어떻게 나아가야 되는지에 대한 메타인지(이번 우테코의 키워드다)가 생겼고, 설사 오프라인 테스트도 못가고 탈락한다고 하더라도 프리코스가 시간낭비 였다는 생각은 전혀 들지 않을 것 같다. 심지어는 내년에 내가 뭘 하고 있을지 모르겠지만 시간이 난다면 프리코스만은 한번 더 해보고 싶다.

과제

우아한 프리코스는 타 선발과정과는 다르게 굉장히 공개적으로 진행된다. 하지만 어디까지가 공개 가능하고 어디까지가 대외비인지 알아보기 귀찮으니까 그냥 내 생각만 정리하는게…
https://github.com/woowacourse-precourse
프리코스 깃허브에서 지난기수 코드들이 확인 가능하다.

1주차 과제를 처음 봤을때 들었던 솔직한 심정은 그 유명한 우테코의 선발 과정이 이렇게 쉬워도 되나? 였다. 하지만 문제의 난이도는 내가 하기 나름인 것을 알기까지 그렇게 오래걸리지 않았다. 1주차가 끝난 뒤 우연히 오프라인 스터디를 들어가게 되었고 프리코스 디스코드에서는 클래스 하나, 메서드 하나, 문법 하나를 가지고 토론하고 있었다. 그제서야 문제 해결에 초점을 두었던 내 코드가 잘못돼도 한참 잘못됐음을 깨달았다.

2~3주차 과제는 점점 어려워지긴 했지만 그럭저럭 평이했다. 나는 1주차의 실수를 생각하며 문제해결보다는 구조 개선과 코드 개선에 초점을 맞췄다. 프리코스 1주차를 생각한다면 엄청나게 성장했다. 좋은 코드를 쓰는 방법을 생각하기 시작했으며, 다른 사람 코드를 읽고 개선할점과 잘한점을 찾는 연습을 했다. 하지만 1주차에 비교해서 성장한거지 이런 활동을 한번도 하지 않았던 나는 아직 갈길이 멀다고 생각한다.

4주차는 확실히 까다로워 진게 느껴졌다. 살짝 불만 아닌 불만을 말하자면 프리코스 과제중 항상 요구사항에 있지 않는 것은 스스로 판단해서 적용해라 이런 문구가 있었다. 이건 이해가 간다. 모든 조건을 세세하게 요구할 수 없을 뿐더러, 확장성이나 세부적인 조건은 스스로 설정할 줄 알아야 된다고 생각한다. 하지만 4주차의 과제에선 너무 애매한 부분이 있었다.
편의점 과제였는데 상품명이 같은데 하나는 프로모션이 적용되어 있고 하나는 적용되어 있지 않았다. 상품을 구분하는 유일한 방법은 상품명인데 상품명이 겹치는 상품이 존재하는 것이다. 그런데 예를 들어 사용자가 콜라를 10개를 가져왔는데 프로모션이 적용된 콜라가 6개밖에 없으면 4개는 프로모션이 적용되지 않은 콜라를 제공해야한다. 그럼 여기서 여러가지 의문이 생긴다.

이름이 같으면 무조건 같은 상품인가?

프로모션은 상품당 1개씩 밖에 존재할 수 없는 건가?

이름이 같은 상품을 가져오면 프로모션이 있는 상품을 먼저 적용해야 되는건가?

채점하는 걸 보니 위 질문에 대답은 모두 YES 였던 것 같다. 개인적으로는 이런 요구사항은 적합하지 않다고 생각한다. 정답이 없는 요구사항이면 이해하겠지만 정답이 정해져 있는 요구사항인데 과제에 설명하지 않은 것 같은 느낌이였다.

우아한 아이들

프리코스에서 가장 중요한 것은 사람인 것 같다. 1000명이 넘는 사람들이 한가지 목표를 가지고 코딩하는 경험은 흔히 있지 않을 것이다. 커뮤니티를 통해서 내 경험을 공유하고 다른사람들의 경험을 공유받는 것에서 생각보다 얻어갈 것이 많았다. 같은 문제를 해결하더라도 사람마다 고민하는 부분이 다르고, 해결하는 방법이 다르다.

2주차에 스터디에 들어가게 되었다. 처음에는 스터디를 할 생각이 없었다. 프리코스에 얼마나 시간을 쓸지도 잘 몰랐고, 스터디에 투자하는 시간만큼 내가 얻어갈 수 있을까? 하는 생각도 있었다. 아주 오만한 생각이였다. 스터디원들은 열정 넘치고 능력있는 분들이였고 지식을 공유하는데 아낌 없었다. 3주간의 스터디동안 정말 많은 것들을 배웠다. 그리고 프리코스 기간이 끝나도 다른 스터디를 이어갈 의지가 있었고, 나도 되는한 따라가면서 많은 것들을 배우고 싶다.

끝으로

코드 리뷰를 받을 때 분명 더 이상 리팩토링이 불가능한 수준으로 리팩토링을 진행한 후에 다른 사람의 비판을 받아 내 코드의 문제점을 찾는것이 가장 이상적인 코드 리뷰 방식이라고 생각한다.
그런데 내 코드는 내가 봐도 리팩토링할 것이 계속해서 생겼던 것 같다. 확실히 실력이 부족했음을 느낀다.

일단 스터디는 당분간 유지될 것 같다. 첫번째로는 오프라인 과제테스트를 연습하는 것이다. 만약 오프라인 과제테스트를 가지 못하게 되더라도 연습하는 과정에서 얻어가는 것이 많을 것 같다.
두번째는 백엔드 관련 스터디이다. 스터디원 모두가 백엔드 트랙에 지원한 만큼 백엔드 엔지니어를 목표로 하고 있다. 이에 필요한 기술 스택을 경험해보는 스터디를 생각하고 있다. 스터디원중 리더십이 뛰어나신 분이 있어서 배울점이 많을 것 같다.

부트캠프는 당장 지원한 곳이 총 3곳이다. 그중에 한곳이 우테코이고 나머지는 SSAFY, 애플 디벨로퍼 아카데미이다. 세곳 다 정말 가고 싶은 곳이고 노력해서 세곳중에 한곳이라도 붙는다면 정말 감사한 마음으로 입과할 것 같다.
싸피는 코딩테스트를 앞두고 있고 ADA는 최종면접 이후에 결과를 기다리고 있다. 일단 당분간은 이것에 집중해보고자 한다.

다음으로 공부하고 싶은 것은 SPRING을 공부하고 싶다. 그동안 공부를 계속 해왔지만 백엔드 스택은 한참 모자란다. (백엔드 엔지니어가 되고 싶은거 맞아?) 그래서 원하는 부트캠프에 합격하든 최악의 경우 모두 떨어져서 취준을 하든 입과전까지 백엔드 기술스택을 최대한 끌어올려보고 싶다.

“정말 소중한 경험이였다.”

This post is licensed under CC BY 4.0 by the author.