[우아한테크코스] 7기 백엔드 합격 후기
우아한테크코스 7기에 합류하게 되었습니다!
기대를 안했어서 그런지 더욱 기쁘네요!
지원서 & 프리코스때 공부했던 키워드 & 최종 코딩테스트 준비하는 방법 및 팁을 정리해 보았습니다.
지원서 작성하기
입학 설명회
지원서를 쓰기 전 해당 기수의 입학 설명회를 보는 것을 추천드려요.
우테코 진행 방식, 어떤 가치를 중요시하는지, 코치분들이 이야기하시는 자기소개서 팁을 들을 수 있어요.
2025년 7기 입학 설명회에서 강조했던 것은 "메타인지"에요.
메타인지라는 개념이 잘 와닿지 않아서, 관련 책을 보며 제 방식대로 메타인지 개념을 정리해 보았어요.
- 읽은 책
제가 생각하는 메타인지가 높은 사람이란 "나의 강점과 약점을 알고, 강점을 고도화하고 약점을 빠르게 극복하는 사람"이에요.
지원서의 몰입 경험에 강점(개발에 대한 열정)이 드러나도록 작성하고, 약점을 극복한 사례를 작성해야겠다고 방향을 잡았습니다.
우테코 홈페이지
우아한테크코스 홈페이지에는 우테코 소개, 교육 과정, 캡틴의 메시지가 작성되어 있어요.
읽어 보다 보면 우테코가 어떤 교육을 지향하는지 알 수 있어 내가 우테코에서 잘 적응할 수 있는 사람인지 파악할 수 있어요.
제가 생각했던 우테코에서 강조하는 개념과 인재상입니다.
우테코의 존재 이유
- 우테코의 마스코트는 행성이다. 인재를 키우고 발굴하는 장소이다.
- 색깔 있는 소프트웨어 장인을 키운다.
- 재교육 없이 현장의 업무를 바로 시작할 수 있는 인재를 키운다.
- 학습 경험과 협력하는 경험을 통해 성장하는 평생 경험을 준다.
어떤 인재를 원하는가?
- 소프트스킬 (협력, 소통)
- 다른 사람들과 소통하고 협력하면서 같이 성장할 수 있는 소프트스킬을 갖춘 인재
- 함께 성장하면 더 빨리 성장할 수 있고 더 즐겁다는 것을 아는 사람
- 자기주도 학습
- 평생 동안 자기 주도적으로 학습할 수 있는 역량을 갖춘 인재
- 효과적인 학습 방식은 무엇이었는지?
- 어떤 식으로 찾았고 어떻게 도움이 되었는지?
- 현재에도 그 경험을 살리고 있는지?
- 최소한의 개발 지식을 가지고 있는지?
- 평생 동안 자기 주도적으로 학습할 수 있는 역량을 갖춘 인재
원하던 원하지 않던 해야 할 일들에서 의미를 찾고, 더 찾아서 배우고, 노력해야 성장할 수 있다.
- 몰입 경험
- 몰입하며 힘든 과정을 극복해 낸 경험을 갖춘 인재
- 우테코의 힘든 과정을 포기하지 않고 지속할 수 있는 내적 동기, 성실성, 간절함을 갖춘 인재
- 현장에 필요한 문제 해결 역량을 키워본 적이 있는지?
- 색깔 있는 개발자
- 어떤 경험을 하였으며 그 경험이 나를 어떤 식으로 변화시켰는지, 어떤 개발자가 될 것인지?
- AI 시대는 사람에 초점을 맞춘다
- 원하는 개발자가 되기 위해 어떤 노력을 하고 있는지?
- 어떤 경험을 하였으며 그 경험이 나를 어떤 식으로 변화시켰는지, 어떤 개발자가 될 것인지?
- 몰입하며 힘든 과정을 극복해 낸 경험을 갖춘 인재
지원서 문항
지원서는 크게 4개의 문항으로 이루어져 있습니다.
1. 프로그래밍 교육 이력 (200자 이내)
고등학교/대학교 전공을 포함하여 부전공, 복수전공, 그 외 교육 기관이 있는 경우 쉼표로 구분해 작성해 주세요. 해당 사항이 없는 경우, "없음"을 입력해 주세요. (예. OO학과, 국비지원, 부트캠프, 독학)
해당 사항 작성하시면 됩니다.
2. 프로그래머가 되려는 이유와 지원 동기 (2000자 이내)
프로그래밍을 단순히 배우고 활용하는 것을 넘어서, 그 과정 자체를 즐기는 사람들은 더 큰 성장을 경험하게 됩니다. 여러분이 프로그래밍을 통해 느꼈던 즐거움은 무엇이었나요? 어떤 계기로 프로그래머가 되기로 결심하게 되었고, 그 과정에서 어떤 목표를 세우게 되었나요? 여러분이 프로그래머가 되어 어떤 가치를 만들고 싶은가요? 또한, 우아한테크코스가 여러분의 여정에 어떻게 이바지할 수 있는지 구체적으로 생각해 보셨나요? 자신이 어떤 사람이며 왜 프로그래머가 되려 하는지, 우아한테크코스에 참여했을 때 어떤 방향으로 나아가고자 하는지를 상세히 알려 주세요.
부제목을 [ ] 으로 나누어 작성해서 가독성을 높였습니다.
[프로그래밍을 통해 즐거움을 느꼈던 경험]
- 팀원들에게 좋은 피드백을 받았을 때로 작성했어요.
[프로그래머가 되기로 결심된 계기와 목표]
- 개인적인 이야기를 작성했어요. 힘들 때 소프트웨어를 통해 도움을 받은 경험을 작성했어요.
[프로그래머가 되어 만들고 싶은 가치]
- 사람들에게 도움을 주는 서비스 & 신뢰할 수 있는 서비스(보안 측면)를 개발하고 싶다고 작성했어요.
[우아한테크코스로부터 얻고 싶은 것]
- 좋은 환경에서 성장할 수 있다는 점을 작성했어요.
개인적으로 프로그래머가 되려는 이유가 지원서 항목에 있어서 좋았어요!
개발자로서 어떤 인생을 살아갈 것인지에 대해 생각해 본 사람은 내적 동기가 있기 때문에 안정적으로 자신의 길을 걸어갈 수 있다고 생각하기 때문이에요. 지원서를 쓰기 전에 프로그래머로서 어떤 삶을 살 것인지, 세상에 기여하고 싶다면 어떤 식으로 기여하고 싶은지 생각해 보고 작성하시면 어려움 없이 쓰실 수 있어요.
솔직하게 작성했습니다!
3. 오랜 시간 몰입했던 경험 그리고 도전 (2000자 이내)
진정한 몰입은 즐거움과 동시에 성장을 끌어냅니다. 여러분이 오랜 시간 동안 주도적으로 몰입했던 경험은 무엇이었나요? 그 과정에서 어떤 도전을 마주했고, 이 경험으로 무엇을 배우고 얻었는지 '구체적으로' 이야기해 주세요. 이 도전의 결과가 반드시 성공일 필요는 없습니다. 도전 속에서 실패가 있었으나 이를 극복하기 위한 과정이 있었다면 이를 상세히 알려 주세요. 또한, 반드시 소프트웨어에 대한 경험이 아니어도 괜찮습니다. 만약 몰입한 경험의 결과물을 함께 보여 주실 수 있다면 더 좋습니다.
올해 프로젝트를 하면서 실시간 서비스를 구현하기 위해 websocket 기술을 도입했던 4개월간을 작성했어요. 기술 문서 & 블로그 & 강의를 보며 기술을 공부하고, github에서 코드를 살펴보며 적용했던 경험, 힘들었던 점과 이 경험을 통해 얻을 수 있었던 점들을 작성했어요. (블로그 글, 프로젝트 관련 pr, discussion url을 첨부했어요.)
이 경험을 왜 몰입 경험으로 뽑았는지, 나에게 이 경험이 의미 있었던 이유를 작성했어요. 개발에 대한 열정과 근성을 드러내는 것이 중요하다고 생각했어요. 실질적인 결과물도 보여주면 설득력이 높아질 것 같아 서비스 영상을 첨부했습니다.
4. 프리코스 목표 설정 (1000자 이내)
4주간의 프리코스 기간은 여러분이 기술적으로 성장할 수 있을 뿐만 아니라, 우아한테크코스를 통해 성장할 수 있는지를 확인해 볼 수 있는 소중한 시간입니다. 이 기간에 어떤 것을 이루고 싶은가요? 그 이유는 무엇인가요? 목표를 설정하고 이를 달성하기 위해 어떻게 학습할 것인지를 고민해 보세요. 구체적인 목표와 함께, 학습 과정에서의 계획과 점검 방법을 함께 작성해 주세요.
이 질문을 통해 메타인지 능력을 간접적으로 파악할 수 있다고 생각했어요. 프리코스 전에 목표를 설정하고, 이를 어느 정도 성취하느냐에 따라 성장의 정도를 가늠할 수 있으니까요.
저는 개인적으로 부족하다고 느꼈던 점을 프리코스 기간 동안 극복하고 싶어 아래의 목표들을 삼았습니다.
-
- AI 도구 없이 프리코스 요구사항을 만족하고 테스트를 통과하는 것
- 미션 당 최소 3명 이상의 pr을 리뷰
증빙 자료
증빙 자료는 꼭 제출하시는 것을 추천드려요. 경험의 진정성과 말의 설득력을 높여주기 때문이에요.
자소서가 프리코스 기간만큼 중요한 것 같아요.
첨삭은 꼭 여러 명에게 받아보는 것을 추천드려요.
처음부터 ai를 사용하지 마시고, 경험을 작성하고 어느 정도 내용이 작성되었을 때 피드백용으로만 사용하는 것을 추천드려요.
프리코스
1주 차 : 문자열 덧셈 계산기 미션
- 미션 구현 & 블로그 회고글
우테코 준비하기 전에 미리 미션을 풀어보며 준비한 분들이라면, 이전에 구현했던 방식에 갇혀있기보다 새롭게 설계하고 확장성 등을 고려하며 다르게 구현해 보는 것을 추천드려요.
같은 요구사항이더라도 이전에 구현했던 방식과 현재 구현한 방식을 비교하며 배울 수 있어요.
공부 키워드: 정규식, 객체 지향이란?, 확장성 기준
2주 차 : 자동차 경주 미션
- 미션 구현 & 블로그 회고글
객체 지향에 대해 깊이 있게 생각할 수 있었던 미션이었어요.
객체지향 책을 읽으며 적용해 보면 좋을 것 같은데, 객체지향의 설계와 오해 책 추천드려요!
또한 제공받았던 1주 차 피드백을 반영하여 2주 차 미션을 개발했어요.
공부 키워드 : 관심사 분리, 객체지향(SOLID), MVC 패턴
3주 차 : 로또 미션
- 미션 구현 & 블로그 회고글
테스트 및 TDD에 대해 깊이 있게 공부할 수 있었던 미션이었어요.
또한 책임 분리를 어디까지 해야 할지 생각해 보며 추상화를 통한 이점 vs 유지보수 비용 tradeoff를 생각하며 이득이 되는 방식으로 구현했던 기억이 있어요.
최범균 님의 테스트 주도 개발하기 책 강력 추천드립니다.
공부 키워드 : TDD, JUnit, AssertJ, 추상화
4주 차 : 편의점 미션
- 미션 구현 & 블로그 회고글
복잡한 요구사항을 지키며 객체 지향 개념을 어떻게 잘 녹여낼 것인지 물어보는 미션으로 느껴졌어요.
3주 차에 비해 구현하는 것 자체로도 굉장히 어려웠어요. (체감 난이도 : 3주차 미션 난이도 * 5)
마음의 준비를 하시고.. 미루지 마시고 바로 구현 시작하시길 바랍니다. (Collaborator 신청 기한도 있어요)
미션 구현시 드리고 싶은 말
시간을 재서 풀어보는 것도 좋지만 우선 시간을 투자하여 요구사항을 꼼꼼하게 읽고 설계한 뒤에 요구사항을 모두 만족시키는 프로그램을 만드는 것이 좋은 것 같아요. 저는 5시간을 재고 풀다가 요구사항 파악을 하지 않고 마구잡이로 구현해서 굉장한 스파게티가 되었어요. 스파게티는 리팩토링할수록 버그를 더 발생시킵니다. (설계가 감이 안 잡히신다면 구현하면서 설계를 수정해도 좋아요)
테스트가 다 통과가 되면 그 후에 객체지향적으로 리팩터링 하고 테스트 작성하는 것을 추천드려요.
로컬에서 테스트가 통과하는데 원격 테스트 서버에서 통과하지 않는다면 환경 설정(파일 경로, 파일 수정 여부)을 꼭 확인해 보세요.
저도 밤새다가 겨우 버그를 발견하고 극적으로 제출했던 기억이 있어요.
엣지 케이스도 시간이 있다면 꼭 확인해 보세요.
파이팅입니다.
공부 키워드 : 파일 입출력, 구현, 책임 분리, 객체지향 설계
스터디
프리코스 시작 전 여러 스터디 모집글이 올라올 텐데, 참여하는 것을 추천드려요!
소중한 인연을 만날 수 있고 코드 리뷰를 하며 시야를 확장할 수 있어요.
스터디원이 6명이라면 한 명당 하나씩의 배울 점만 가져가도 혼자 공부하는 것보다 2~3배의 성장을 할 수 있어요.
디스코드
우테코에서 디스코드 채널을 만들어서 활동할 수 있는데 적극적으로 참여하는 것을 추천드려요!
평가 기준은 아니지만 함께 개발 이야기를 나눌 수 있는 친구들을 사귈 수 있어요.
저는 동물원이라는 채널에서 친해진 분들과 함께 최종 코딩테스트를 준비하고 계속 인연을 이어가고 있어요.
코드 리뷰
코드리뷰를 미션 진행에 지장 되지 않는 선에서 적극적으로 참여하는 것을 추천드려요!
잘하는 사람이든, 그렇지 않은 사람이든 함께 개발 이야기를 하다 보면 얻는 것이 생겨요. (공부해야 할 키워드, 다른 분들이 구현에서 중요하게 생각한 점 등등)
3~4주 차로 갈수록 미션이 어려워지니 초반에 5명 이상 정도 리뷰 해보면서 배울 수 있는 점 최대한 배우고 적용하는 것을 추천드려요.
책
프리코스를 하면서 느낀 점은 코드를 작성하고 리팩터링 하고, 리뷰를 하면서 배우는 것도 중요하지만 더욱 큰 성장을 위해서는 책을 읽어야 한다는 것이었어요. 책을 읽으면 더욱 깊이 본질에 다가갈 수 있어요. (코드를 작성할 때 한 depth 더 깊이 생각할 수 있어요.)
공부하면서 코드 작성에 한계가 느껴진다면, 책이 돌파구가 될 수 있을 거예요. 🌟
위 활동들을 모두 실행하기에는 시간이 부족할 테니 조금씩 다 해보면서 방향을 잡거나 자신에게 맞는 새로운 방법을 찾아보세요.
파이팅!!
최종 코딩테스트
최종 코딩테스트 준비
- 구현 & 블로그 회고글
매주 디스코드에서 만난 분들과 함께 미션을 풀고 코드 리뷰를 진행하며 최종 코딩테스트를 준비했어요.
1차 합격은 최종 코딩테스트 1주 전에 나오기 때문에 그때 준비하는 것보다 미리 준비하는 것이 좋은 것 같아요.
최종 코딩테스트를 본 날 동물원 크루인 수달님과 물고기님과 함께 눈물 젖은 비빔밥 회동을 했습니다.
사진은 정신이 없어서 못 찍었어요..
미션이 정말 어려웠어요. 시간이 부족했고 테스트 통과도 다 못했어요..
마음이 아팠지만 집에 도착 후 미션을 다시 풀면서 전략을 잘못 세웠다는 것을 깨달았습니다.
8기에 지원하시는 분들에게 조언하고 싶은 점은 아래와 같아요.
최종 코딩테스트에서 미리 알면 좋았을 점들
- 환경 설정을 꼼꼼하고 완벽하게 해서 미션 구현에 지장이 없도록 하기
- 미리 테스트 보는 장소에 오셔서 환경 설정을 꼼꼼하게 해 주면 좋아요.
- 유의사항도 꼼꼼히 읽어보세요.
- 요구사항 분석 및 설계는 1시간이 넘지 않게 하기
- 요구사항 분석이 끝나고 설계할 때, 주어진 테스트 살펴보기 ⭐
- 각 테스트가 어떤 기능을 검증하는지 주석으로 작성하고, 해당 기능의 구현이 끝나면 테스트가 통과되도록 하기
- ex) Test1 - 출석 확인 기능, Test2- 출석 확인 기능, Test 3 - 제적 위험자 확인 기능
- 결과적으로 모든 기능을 구현하지 못하더라도 테스트는 모두 통과하도록 하기
- 구현 욕심을 어느 정도 내려놓기 (굉장히 어려운 일이죠..)
- 각 테스트가 어떤 기능을 검증하는지 주석으로 작성하고, 해당 기능의 구현이 끝나면 테스트가 통과되도록 하기
- 출력 부분 잘 살펴보기
- 숨겨진 요구사항 파악하기
- 끝까지 포기하지 않기
- 최대한 버그를 수정하기
- fork 하지 말고, Collaborator 신청을 제일 먼저 해라.
- 매 연도마다 제출 방식은 바뀔 수 있으니 제출 가이드를 꼼꼼하게 봐주세요!
최종 코딩테스트 다시 풀어보기
집에 돌아와서 미션을 다시 풀어보고 테스트도 작성하며 부족한 점을 메우는 시간을 가졌어요.
택이 님과 코드 리뷰를 수행했는데, 최종 미션에서도 배우는 점이 많아서 안 했으면 아쉬울 뻔했어요!
- 다시 풀어본 최종 미션 : https://github.com/Starlight258/java-attendance-7/pull/1
공부 키워드 : LocalDate, LocalTime, LocalDateTime, 구현, 객체지향 설계, 테스트 작성
결과
메일이 늦게 와서 어느 정도 마음을 비우며 좋아하는 앨범(악동뮤지션 - 항해)을 들으며 이후 계획을 생각해보고 있었어요.
그런데 합격 메일이 와서 엄청 놀랐어요. 저를 왜 뽑았는지 정말 궁금하지만 물어봐도 되는 건지 잘 모르겠네요!
최종 코딩테스트에서는 테스트 통과하는 것이 가장 중요한 것 같고, 그 후 자기소개서 & 프리코스로 종합 평가를 하는 것 같아요.
5/5나 4/5가 아니더라도 통과하신 분들이 꽤 있었어요! (저 포함)
공부를 더 할 수 있다니 기쁘네요! 우테코 크루로서 제가 다른 크루들에게 좋은 방향으로 영향을 주면 좋겠다는 생각이 큽니다.
제 단점에 집중하기보다, 장점을 최대한 키워서 우테코 커뮤니티에 기여하는 방법을 생각해 보아야겠어요.
마치며
최대한 솔직하게 작성했는데, 도움이 되면 좋겠네요!
혹시 궁금한 점 있으면 댓글 또는 audwl03071@gmail.com로 연락 주세요!
감사합니다.
'우테코' 카테고리의 다른 글
[우아한테크코스] 최종 코딩테스트 후기 (6) | 2024.12.16 |
---|---|
[우아한테크코스] 프리코스 4주차 - 편의점 미션 회고 (2) | 2024.11.17 |
[우아한테크코스] 프리코스 중간 회고 (5) | 2024.11.06 |
[우아한테크코스] 프리코스 3주차 - 로또 미션 회고 (0) | 2024.11.04 |
[우아한테크코스] 프리코스 2주차 - 자동차 경주 미션 회고 (0) | 2024.10.28 |