카카오테크 부트캠프 풀스택 2기 해커톤을 진행하고 작성한 후기입니다.

제가 팀으로 참여한 밥팟팀은 본상 (2등, 카카오 대표이사상)을 획득했습니다.

밤샘으로 떡진 머리와 눈이 반쯤 감긴 처참한 모습 + 온라인으로 함께한 Kane도 있어요!

 

2박 3일간 진행했던 짧은 프로젝트였지만 배우고 깨달은 점이 많아서 꼭 후기를 남기고 싶었어요.

해커톤의 각 과정에서 경험했던 것들을 시간 순서대로 작성해 볼게요.

해커톤 형식과 주제

우선, 저희 카카오테크 부트캠프에는 3개의 트랙이 있어요. 풀스택, 인공지능, 클라우드 과정이 같은 공간에서 서로 각자의 트랙을 공부하는 형식이에요. 그래서 이번 해커톤은 3개의 트랙에서 최소 1명씩 구성되어 6명이 구성되는 팀 형식이었어요. 인공지능 트랙의 학생들이 있다 보니 이번 해커톤의 주제는 “LLM을 활용한 서비스”였습니다. 다양한 트랙의 학생들이 전문성을 가지고 진행하다보니 대학교 혹은 토이 프로젝트보다는 완성도 있는 프로젝트를 완성할 수 있었어요. 기존의 프로젝트와는 무엇이 달랐는지는 이후에 이야기해 볼게요.

팀 구성은 해커톤 이전에 아이디어톤이라는 행사로 팀 주제를 발표하는 자리가 있었어요. 아이디어톤에서 발표하는 주제들의 팀에 합류해서 해커톤을 진행하는 방식이었어요.

팀 모집

저는 아이디어톤 전에 좋은 기회로 인공지능 과정의 noah(이하 노아)와 같이 ‘밥팟’이라는 주제로 팀이 미리 결성했어요. 노아는 원활한 소통을 위해 오프라인 교육장에서 학습하는 인원들을 토대로 팀을 구성하려고 했고, 풀스택에서는 매일 출몰하는 저와 같이 팀이 되고 싶어 하는 것 같았어요. 저 이외에도 클라우드 과정의 yuna(이하 유나), 인공지능 과정의 joy (이하 조이)가 합류했어요. 

이후, 풀스택 과정의 팀원을 섭외하는 과정은 노아가 아닌 제가 하였어요. 아무래도 웹 프로젝트 과정에 경험이 있는 제가 적절한 팀원들을 섭외하기에는 좋아보였어요. 결국, 백엔드에서는 mumu (이하 무무, 아무무의 그 무무 맞습니다), kane (이하 케인)이 합류했어요. 무무는 자바 기반의 웹 서버를 제작해 주었고, 케인은 파이썬 기반의 AI 서버를 구축해 주었어요.

결국 풀스택 3(프론트엔드1, 백엔드2), 인공지능 2, 클라우드 1명의 구성으로 팀 구성을 완료했어요.

밥팟이란?

저희팀은 ‘밥팟’이라는 서비스를 제작하였는데 말 그대로 밥 파티라는 뜻으로, 원하는 식당을 토대로 밥 파티를 생성하고, 이에 신청해서 같이 식사하는 자리를 마련하는 커뮤니티입니다.

카테부 (카카오테크 부트캠프) 학생들이 식사 시간에 매일 같은 사람들과 밥을 먹는 것이 아니라, 다양한 사람들과 만나서 라포를 형성하고 원하는 음식도 먹을 수 있는 서비스를 제작해서 식사시간이 즐거워졌으면 하는 작은 바램으로 시작되었어요.

 

또한, 보통 식당을 고르는 경우 뭐 먹을까?로 시작해서 그럼 어디로 갈까?로 이어지는 것을 밥팟팀은 부정적 사건의 흐름으로 바라보았어요. 음식을 고르는 시간과, 식당을 검색하는 시간이 귀한 점심시간을 허비하는 과정으로 생각했던 거에요.

따라서, 밥팟팀은 자체 제작 LLM 챗봇인 밥봇을 도입하여 원하는 음식을 토대로 음식점을 추천해주는 기능을 제공해주기로 하였어요.
크롤링을 통해 카테부 주변의 식당 데이터를 수집하고, 밥봇이 사용자와의 대화를 통해 음식점을 추천해주는 기능이에요.

 

(AI팀 자랑)

원하는 음식, 식당의 분위기 등 다양한 입력값에도 올바른 선택지를 제공하도록 AI팀은 짧은 해커톤 기간에도 최적화에 상당히 많이 애써주셨어요. 특히, 밥봇은 외부 AI API 사용이 아닌 개발된 자체 모델이었다는 점이 기술적으로 대단한 성과 및 도전이었다고 생각해요.

 

밥팟 생성 과정 (좌), 생성된 밥팟 (우)

 

해커톤 프로세스

밥팟팀이 좋은 결과를 만들 수 있었던 이유는 짧은 해커톤 기간이었음에도 불구하고, 규칙적이고 체계적인 개발 과정을 거쳐서 프로젝트를 완성했기 때문이라고 생각해요. 저희는 아래와 같은 방법들을 사용했어요.

  1. 2~3시간 간격으로 스크럼을 통해 각자 진행하고 있는 프로세스를 공유한다.
    막히고 있는 지점이 있으면 이를 공유하고, 함께 해결 방법을 모색한다.
  2. 회의는 필요한 내용만 전달하며, 최대한 짧게 진행한다.
  3. 의사표시와 이해하지 못 하는 내용에는 확실히 표현하여 의사소통 오류가 없도록 한다.

가장 중요하게 작용했던 것은 1번의 주기적인 회의였다고 생각해요. 풀스택의 강사인 Kevin (항상 고마워요 케빈)의 조언을 토대로, 주기적으로 회의를 해서 각자 어디를 진행하고 있는지 공유하고 인원이 더 필요한 부분에는 여유로운 팀원이 붙어서 함께하는 방향으로 진행했어요. 이 과정에서 1명 밖에 없었던 클라우드 과정의 배포 부분을 백엔드의 무무가 함께한다던가, AI 서버 구축 과정에 인공지능 역할의 노아와 백엔드 역할의 케인의 역할 분담을 확실히 하여 각자의 분야에 전문성을 가지고 갈 수 있도록 하는 과정이 매우 효과적인 전략으로 작용했어요.

 

또한, 회의를 짧게 하는 것도 매우 좋은 방법이었어요. 이전 프로젝트에서 회의가 길어지면 팀원들의 집중력도 저하되고 회의가 끝나면 힘이 쫙 빠져서 개발을 못 하는 상황들을 여러 번 경험한 적이 있어요. 그래서, 이번에는 회의를 진행할 때 팀장이(It's me) 주도적으로 진행하고, 답변이 필요한 부분만 팀원들에게 대답을 요청하고, 깔끔하게 마무리 정리해서 모호함 없이 쟁점을 매듭짓는 방법으로 회의를 진행했어요. 그렇다고 해서 팀원들의 의견을 무시하고 팀장의 주관대로 진행하는 것이 아닌, 각자가 전문성을 가지는 부분들은 각 파트가 책임감을 가지고 해결하고, 협업을 하는 부분들은 서비스 확장을 고려해서 미래지향적인 부분으로 결정을하였어요. 특히, 각자 편한 부분으로 협업하는게 아닌, 서비스 자체의 확장성에 중점을 두고 개발했어요.

(팀원들은 제가 팀장 경험이 있어서 회의 진행에 경험이 있다고 생각했겠지만, 이전 프로젝트 회의에서는 모두가 함께 진행하는 방식을 사용했었고, 주도적으로 진행하는 건 이번이 처음이어서 조금은 떨렸습니다..)

 

이를 토대로 밥팟팀은 발표 5시간 전인 새벽 5시에 MVP의 모든 기능을 완성하고 발표 준비를 할 수 있었어요. 발표 준비 PPT는 유나가 도맡아 해주시고, 조이가 기깔나게 발표를 해주셨어요.

 

해커톤을 하며 느낀 감정

저는 사실 지금까지 해커톤을 별로 좋아하지 않았어요. 짧은 기간 동안 만든 프로젝트가 완성도가 좋을 수 없다고 생각했고, 만들고 버려지는 프로젝트는 더더욱 만들 필요성을 느끼지 못했어요.

 

이랬던 제가 밥팟 서비스를 제작하면서 많은 심경의 변화를 경험했어요.

 

저희 서비스 밥팟은 카테부 학생들을 위한 프로젝트였던 만큼 이후에도 계속 유지 보수할 생각이었어요. 그래서, MVP를 개발할 때도 최대한 미래지향적인 방향으로 기획을 진행했고 개발하였어요. 그렇다 보니, 자연스럽게 유지보수가 가능한 코드를 작성하게끔 되었고, DB 설계, 기획 등 다양한 부분에서 단기적 성향을 지닌 프로젝트로 개발되지 않았어요.

 

예를 들어, 밥팟팀은 (우수한 팀원들이 있어서) 생각보다 빠르게 개발이 진행되었다 보니 해커톤 기간 동안 계속해서 기능을 확장해 나갔어요. 특히, 초기 MVP 설계에는 밥팟팀의 추천 장소와 같은 기능(아래 사진 참고)은 존재하지 않았어요. 개발 과정에서 시간이 남아서 기능을 추가하기로 하였고, 음식점 광고를 표시하면 수익성을 창출할 수 있는 추천 장소 파트를 만들기로 기획했어요. 이 과정에서 음식점 DB의 속성에 ₩isAdvertisement₩ 과 같은 임시 필드를 만들어서 사용할 수 있었지만, 추후 광고를 제안받고 이를 관리하기 위해서는 ₩Advertisement₩ 테이블을 생성해야 함을 인지한 상태로 개발을 진행했어요.

 

광고 테이블이 필요한 값 (대략)

  • 광고 식당 (PK)
  • 광고 기간
  • 광고 우선순위

이렇게 앞으로 구현할 때 필요한 점들을 생각 해가며 기능을 구축했고, 각자의 파트가 있음에도 모두가 PM 역할을 함께 수행하며 기획과 설계 과정에 참여해서 프로젝트의 미래지향적인 개발을 꾸준히 생각했던 것 같아요.

 

메인화면의 밥팟팀의 추천 장소 공간

 

이런 경험을 하면서 해커톤 프로젝트 당연히 유지 보수하지 않을 거라는 확신을 가지고 임했던 과거 저의 마음가짐 자체가 잘못되었었음을 깨달았어요.

 

현업 수준의 프로젝트 아키텍처

또한, 기존의 프로젝트들은 프론트엔드 + 백엔드 + (인공지능 모델 API)의 간단한 아키텍처로 진행했었는데, 클라우드 팀이 합류하면서 프로젝트가 매우 완성도 있게 구축되는 것을 경험했어요. 특히, Vercel에 간단하게 배포했던 과거의 프로젝트들과는 달리, 도커와 EC2와 같은 클라우드 환경에 배포하는 것이 현업에서 실제 서비스를 개발하는 과정처럼 느껴졌어요. CI/CD는 Vercel이 제공해 주는 기능으로 받아들였었는데, Github Actions를 사용하며 현업에 가까운 더 전문화된 개발 과정을 느끼게 되었던 것 같아요. (또한, 사이트와 서버에 TLS를 적용하는게 까다로운 작업임을 이번에 몸소 느겼습니다.)

 

특히, 저희 모두 모든 파트에 전문성을 지니고 있지 않았어요. 저 같은 경우, 풀스택 과정과 설계에는 자신이 있었지만, 인공지능과 클라우드 과정은 기본적 개념만 알고 있을 뿐 자세한 지식과 구현 과정은 알고있지 못했어요. 따라서, 팀원 모두가 각자의 개발 프로세스를 소개하고 설명할 때 추상화하는데 굉장히 신경써주시는게 느껴졌어요. 이렇게 다양한 직군과 협업하는 경험을 또 언제 해볼까 싶은 생각도 들었습니다.

 

앞으로의 포부

밥팟 서비스는 앞으로 카테부 학생들이 유용하게 사용할 수 있을 만큼 성장할 예정이에요.

특히, 최종 발표를 진행하며 카카오 심사위원분(이름은 공개해도 되는지 모르겠어서..) 피드백을 남겨주신 점들을 반영해보고 싶어요.

  • 이용자들이 밥팟을 생성할때 궁금해할 정보 수집
    • 식당까지의 이동 거리
    • 웨이팅 시간
    • 식사 나오는 데 걸리는 시간
    • 식사하는 데 걸리는 시간
  • 판교 직장인들을 위한  커피챗 모집 탭으로 비즈니스 확장
  • 이용자들끼리 소통할 수 있는 환경을 더 만들어주기
    • 각 밥팟의 채팅방 혹은 공지
    • 좋아요와 스크랩 등 관심 있는 밥팟 등록
    • 인스타그램처럼 밥팟 사진을 공유할 수 있는 스토리 보드
  • 1/N 결제 기능
  • 밥팟 생성자에게 신청 알림 제공 (PWA)

 

이렇게 카테부에서의 첫 협업 프로젝트는 매우 성공적으로 끝낼 수 있었어요. 비록 대상(1등)을 받지는 못했지만, 프로젝트 과정에 대한 후회는 없어서 아쉽다고 느껴지지는 않는 것 같습니다.

 

두서없는 긴 글 읽어주셔서 감사하며, 카테부에서 들었던 가장 좋은 글귀로 글을 마무리하겠습니다.

"팀원을 도와준다는 것은 내 일이 아님을 인정한다는 것을 의미해요. 도움이 주는 것이 아닌 모두가 함께 해결하도록 해요. (구름 대표님)"

 

상품은 애플 매직 마우스!

'끄적끄적 > 회고' 카테고리의 다른 글

2024년 회고  (0) 2025.01.04
24 네이버 부스트캠프 지원 회고  (2) 2024.07.10

시작하기에 앞서, 사고로 안타깝게 하늘의 별이 되신 분들의 명복을 빕니다.

 

어느덧 갑진년 2024년을 지나, 2025년 을사년이 되었습니다.

 

한 해를 마무리하고 새로 맞이한 2025년을 슬기롭게 보내기 위해서, 작년을 이 글로 마무리하고 새로운 마음가짐으로 2025년을 시작하고자 합니다.

 

1️⃣ 대학교 졸업.

길고 길었던 6년간의 대학 생활을 마무리하고, 졸업생(수료)이 되어 학생의 신분에서 벗어났습니다. 4학년 2학기 전에는 항상 “졸업하고 싶다”를 많이 생각했었는데 막상 마지막 학기가 되어보니, 친했던 친구들과 만나지 못함에 대한 아쉬움, 정들었던 학교를 이제는 가지 않는다는 아쉬움이 너무 많이 느껴졌습니다. 저는 초등학교, 중학교를 같은 친구들과 보내왔어서 중학교 졸업식 때 왕창 울었었습니다. 그때 기억이 나면서, 대학교도 졸업하고 싶지 않더라고요..

그래도!! 안녕은 영원한 이별은 아니라잖아요? 동종업계 친구들도 많고, 미래를 함께할 평생 친구도 몇몇 있는 만큼(나만 그렇게 생각하는 거 아니겠지..?) 슬퍼하지 않고 나아가야겠습니다 😁

 

 

2️⃣ 2024년은 실패의 해

2024년을 생각하면 가장 많이 떠오르는 키워드는 안타깝게도 “실패”입니다.

저는 지금까지 생각보다 순조로운 인생을 살아왔습니다. 예상했던 고등학교로 입학, 운 좋게 대학교 예비 번호로 재수 생활 없이 대학교 입학, 서울의 좋은 부대에서 군 생활을 보냈던 만큼 저에게 큰 실패는 어깨너머 들은 이야기였습니다. 그래서, 이번 연도 실패는 저에게 지금까지도 큰 아픔으로 느껴집니다. 참고로 저의 실패는 “취업 실패” 입니다. 비록 수료생이 된 지는 1개월도 되지 않았지만, 그 전에 인턴 생활을 경험하기 위한 도전들, 졸업과 동시에 취업하고자 했던 도전들이 모두 실패하였습니다.

 

한번 한번 실패할 때마다 “언젠가는 붙겠지” “잘될 거야”라며 스스로를 위로했습니다. 하지만, 그 실패들이 한번 두번 쌓이다 보니 어느 순간 노션 두 페이지를 가득 채울 만큼의 실패를 했다는 것을 알아차렸습니다. 취업하는 친구들은 점점 생겨나고, 제 취업에 관심을 가지는 주변인들이 많아지다 보니, 낙관적이었던 제 생각들이 점점 무책임하게 느껴졌습니다.

누구나 실패는 하고, 실패를 해봐야 성공해야 한다고들 합니다. 실패를 통해서 깨달음을 얻고, 이를 통해서 더 나아간다고 말이죠. 저도 그 과정에 있다고 생각했습니다. “나는 지금 실패 중이야. 언젠가는 성공하겠지?”라고 생각했습니다. 정작 제일 중요한 “실패를 통한 성장”을 잊고 있었습니다.

 

그래서, 이제부터는 모든 경험에 긍정적이든 부정적이든 의미를 부여하기로 마음먹었습니다. 그러기 위한 많은 방법을 생각해 보았습니다. 누군가는 실패의 교훈들을 포스트잇으로 모두 벽에 붙여두거나, 누군가는 데이터화하여 저장해두는 방식을 선택할 것입니다. 저는 오답 노트를 적고 이를 매번 보는 사람과는 거리가 멉니다. 오히려 제 실패, 성장 과정을 남들에게 보여주며 자극받는 사람입니다. “내가 지금 이거 하고 있어”, “내가 이 실패를 했는데 이걸로 뭐 이런 생각도 들더라”라며 말이죠. 그래서, 이 글을 적고 있습니다. 앞으로는 실패를 낙관적으로 받아들이지 않고 한 단계라도 더 나아가기를 바라면서 말입니다.

 

 

3️⃣ 2025년은 어떻게 살까?

우울한 이야기는 그만하고, 2025년은 어떻게 살지 생각을 많이 해봤습니다. 끝이 보이지 않는 긴 터널을 지날 텐데, 이 터널을 현명하게 보내려면 어떻게 해야 할까.. 많은 블로그를 읽고 사람들의 취업 후기를 찾아보기도 하면서 정답을 찾아보려고 애썼습니다. 하지만, 생각보다 해답은 의외의 곳에서 발견되었습니다. 새해 종을 치고, 신년 운세를 친구가 보았다고 해서 저도 돌려보았는데 아래처럼 나왔습니다.

 

신년 운세

 

요약하면, “체계적인 관리와 운용 속에서 계획적인 삶의 흐름이 예상된다”, “올 한 해는

미래를 위한 다지는 한 해로 이끄시길 바랍니다.” 였습니다.

 

 

“체계적인 관리와 운용 속에서 계획적인 삶의 흐름이 예상된다”

저는 체계적인 사람과는 거리가 있다고 생각합니다. 물론, 체계적으로 되기 위해 노션에 공부 내용 정리, 블로그 작성 등 여러 가지 노력을 하지만, 파워 J들이 봤을 때는 난장판 그 자체입니다. 이러한 성격이 평상시 공부를 하거나 개발할 때 머릿속에서도 일어난다고 항상 생각해 왔습니다.

 

무엇인가를 집중하고 파고들려고 하면, 또 재밌는 주제가 보이고 그 주제로 어느샌가 생각을 트는 경우가 많더라고요. 학교 공부할 때는 이런 경우가 적었습니다. 교수님이 하라는 공부, 하라는 과제를 성실하게 따라가기만 하면 학점을 자연스럽게 따라왔습니다. 하지만, 자기개발인 웹 개발 공부를 할 때는 모르는 게 많다 보니 “저것도 배워볼까?” “저건 뭐지” 자연스럽게 샛길로 빠지는 경우가 많았습니다. 다시 돌아와 보려고 하면 뭐 하고 있었는지 까먹어서 깊이 있는 공부가 되지 못했던 것 같습니다.

 

따라서, 공부할 때 저만의 노트를 하나 둘까 생각합니다. 노트에 제가 지금 하는 작업 혹은 공부를 마인드맵 형식으로 그려놓고, 그 마인드맵에서 생각나는 것들을 아래 노드로 그려놓는 것입니다. (DFS처럼) 그렇게 되면, 샛길로 빠지더라도 돌아와서 올바르게 나아가면 더 촘촘한 사람, 개발자가 되지 않을까요?

 

 

“올 한 해는 미래를 위한 다지는 한 해로 이끄시길 바랍니다.”

제 상황을 알고 있는 걸까요? 소름 돋는 문장이네요.

마무리

글을 써보니, 취업 관련 이야기가 많고 우울한 분위기였네요.

개발 취업시장이 얼어붙고, 불경기가 일어지고 있는 만큼 저와 같은 개발 취준생분들이 아주 많을 것 같습니다. 위로를 해드리고 싶지만, 글로 쓰는 위로는 힘이 없는 것을 알기에 여러분들처럼 힘들어하는 저 자신으로부터 위로받았으면 좋겠습니다.

긴 글 읽어주셔서 감사합니다. 새해 복 많이 받으세요 😁

 

 

🔖 참고

위에서 제가 무엇을 할지 적어둔다고 했었죠?

(TMI) 저는 앞으로 이런 일들을 할겁니다. 모든 것들을 3개월 내로 마무리하는 것으로 계획하고 있어요 앞으로 저의 공부를 지켜봐주세요!

npm 패키지 개발 

이전 프로젝트 하면서, Custom Hook을 사용하면 할 수록 로직 분리도 간편하고 코드도 간단해지는 것을 느꼈습니다.

그래서 한번 Custom Hook을 관리하는 npm 패키지를 제작해보면 어떨까 싶습니다. 재밌겠네요 😁

 

웹 개발(프론트엔드) 공부

공부를 하면서 재미를 찾는다는건 좋은 방향이라고 생각합니다.

그래서, 저만의 시리즈인 “너 이거 알아?” + “나 이건 몰랐어” 시리즈를 만들어서 블로그 글로 만들어볼까 합니다.

“너 이거 알아?”

  • 개발을 하면서 많이들 놓칠 수 있는 기본 지식들
    • ex) `.map` 함수를 쓰면서 `key = index` 를 왜 쓰면 안되는지 알아?
    • ex) `package.lock` 의 용도를 알아?
  • CS 기본 지식 중에 알고는 있지만 자세한 내막은 모르는 경우
    • `CSRF` 공격을 실제로 해봤어?

“나 이건 몰랐어”

  • 개념적으로 처음 들어보는 것
  • 개발하면서 생긴 새로운 인사이트

 

자격증 취득

  • 정보처리기사 자격증 따기!

지원 과정

지원 과정

자기소개서 문항

네이버 부스트캠프는 네이버에서 진행하는 우수한 개발자 인재를 양성하는 부트캠프식 프로그램이다. 나는 웹 풀스택 과정을 신청했다.

많은 비전공자 학생들과 전공자 학생들이 하나의 전형에서 신청하기 때문에, 자소서 문항도 회사에서 개발자를 뽑는 문항과 상당히 대비된다고 느꼈다.

1. 왜 개발자가 되고 싶나요? 그 이유와 부스트캠프에서 이루고자 하는 목표를 구체적으로 서술해 주세요. (공백 포함 400자 내외)
  • 나는 복수전공자이므로, 개발을 시작하게된 이유를 중심으로 적었다.
2. 소프트웨어 개발을 더 잘하고 싶어서 시도했던 경험을 적어주세요. 그리고 그 과정에서 어떤 노력을 기울였는지 사례와 함께 구체적으로 적어주세요. (공백 포함 400자 내외)
  • 교내 개발 동아리 참가한 경험
  • CS 스터디를 참여한 경험
  • 학기 중에 했던 공부들을 토대로 적었다.
3. 부스트캠프 웹・모바일은 자기주도적으로 문제를 해결하는 태도가 중요합니다. “해야 하는데”에서 끝나지 않고 실천했거나, 적당히/그러려니 하기 보다 더 나은 방법을 떠올렸다거나 혹은 주변 사람들에게 인정받을 정도로 무엇인가에 몰입하는 등 자기주도적으로 사고하고 행동한 경험이 있나요? 구체적인 과정과 그 경험이 현재 나에게 미친 영향을 중심으로 서술해 주세요. (공백 포함 400자 내외)
  • 내가 진행했던 첫 프로젝트의 경험을 중심으로 작성했다.
  • 당시, 개발에 대해 무지했던 상황에서 어떻게 개발을 끝까지 완성하고 마무리를 했는지에 초점을 맞췄다.
  • 또한, 이를 통해 얻은 신뢰를 토대로 맡게된 동아리 프로젝트를 언급하며 인정받은 경험을 언급했다.
4. 부스트캠프 웹・모바일은 커뮤니티 학습이 중요합니다. 나와 다른 의견이 틀린 것은 아니라고 생각하거나 나만의 노하우, 방법, 생각을 기록하고 공유하기를 즐기는 등 열린 사고로 동료와 협력한 경험이 있나요? 구체적인 과정과 그 경험이 현재 나에게 미친 영향을 중심으로 서술해 주세요. (공백 포함 400자 내외)
  • 학부 운영체제 수업에서 어려운 과제를 해결하기 위해 스터디를 통해 이를 해결했던 경험을 적어냈다. 이후, 해당 스터디는 계속해서 이어지고 있음을 언급하기도 했다.

참고로, 부스트캠프는 자기소개서와 1차 코딩테스트를 토대로 합격자를 선정한다. 

코딩테스트 응시료는 1만원이다.(2차 코딩테스트 이후는 비용X)

 


1차 코딩테스트 (온라인)

[시험환경]

시험시간: 2H

지원언어: C, C++, Java, Python, Javascipt, Swift 등 대부분의 언어

특이한 점은 해당 시험의 감독이 없이 진행되었다.

단, ChatGPT / IDE / 공유 등 사용하는것이 금지되었지만 감독이 없어서 많은 사람들이 사각지대에서 사용했을 것으로 추측된다.

나는 최종까지 가게 되면 어차피 실력싸움이라는 생각에 쓰지 않고 실력으로 임했다.

 

[시험문제]

1차 코딩테스트는 CS문제 10문제 내외 + PS 3문항이 출제되었다.

 

1. CS 문제 : 난이도

전공자에게는 매우 쉬운 문제들이었다.

기본적인 자료구조, 컴퓨터 지식 정도가 나왔으며 1학년 당시 “컴퓨터적 사고”가 무엇인지 많이 배웠었는데, 그런 문제들이 나왔다. 복수전공자인 입장에서는 어려움 없이 풀었다.

 

2. PS 3문항 : 난이도

매우 간단했다. 해당 시험은 사전에 시간복잡도를 고려하지 않는다고 공지해준다.

구현만 하면 되는 것이다. 시험 문제를 직접적으로 언급하지는 못하지만, javascript로 코테 기본문제를 풀 수 있으면 구현가능하다.

문제를 푼 후, 일부 문제에 한해 사고 과정을 묻는 서술형 문항이 있다. 자유롭게 본인의 생각 과정을 적으면 된다.

저는 2시간 시험이지만 다 풀고 30분 일찍 나왔다. (참고로, 저는 실버1~골드5 정도의 백준 실력입니다.)

합격 메일


베이직 과정 (2주)

1차 코딩테스트를 합격한 사람들에게 베이직 교육을 들을 수 있는 기회를 제공한다.

(베이직 과정은 필수가 아니며, 듣지 않은 사람들에게 불이익 없다고 공지받았다.)


위의 메일에도 있듯이, 베이직은 프로그래밍 언어에 익숙해지는 단계이다.

최적화, 오류수정, IDE 사용법과 같은 문제들을 매일 해결한뒤 학생들과 블로그처럼 공유하는 과정의 연속이었다.

 

개인적으로는, 베이직 과정은 전공 수업을 들어본 입장에서 필요한 수업이 아니라고 느껴졌다.

졸업반인 나에게는 굳이 ??… 싶어서 1주차까지만 수행했다.

 

실력에 자신이 있다면, 베이직은 생략해도 괜찮지만 듣는 것을 추천하지만, 해당 과정에서 해결했던 문제가 2차 코딩테스트에 비슷하게 출제되었다. 

 


2차 코딩테스트 (온라인)

[시험환경]

구름을 통해 화면 공유, 신분증 확인, 핸드폰 카메라 영상 총 3가지를 해야한다.

시험시간: 2H 30M

지원언어: Javascript, Kotlin, Swift (각 트랙에 따라 제한, 타 언어 사용 불가)

 

[문제]

2차 코딩테스트도 마찬가지로 CS문제 10문제 내외 + PS 3문항이 출제되었다.

1. CS 문제 : 난이도 중하

CS 문제라고 표현하기도 어려운 문제들이 많았다. 몇몇 컴퓨터 관련 문제들이 나오긴 했지만, 범위는 상당히 넓었다.

해당 문제들이 난해했던 이유는 대부분 문항이 “모두 고르시오”였기 때문이다. 확실하지 않으면 틀리거나 감점 당한다.

베이직 과정에서 배운 내용이 나오기도 했었다.

그러나, 검색이 가능하므로 당황하지 않고 검색하면서 확실하게 푸는 것을 추천한다.

 

2. PS 3문제 : 난이도

1번: 가장 쉬웠던 문제. 브론즈 ~ 실버 초반 정도의 문제였다.

2번: 가장 어려웠던 문제.

베이직 과정에서 비슷하게 출제되었던 문제를 변형해서 출제하는 과정에서 "학생들이 베이직에서 해봤으니까 조금더 어렵게 내야지~" 하면서 복잡하게 꼬아서 내셨다고 생각한다.

데이터에 대한 자료구조를 잘 만들어서 구현을 해야하는 문제였다.

3번: 개발도구와 관련된 문제였다. 2번 문항보다 쉬웠는데 2번을 푸는데 시간을 많이 소비해서, 다 풀지못하고 테케의 반만 통과한 상태로 냈다.

1차 코딩테스트와 마찬가지로, 문항에 대한 사고 과정을 적는 문제가 2,3 문항에 주어졌다.

 

결과적으로 2번 문제를 완벽하게 풀었다고 생각해서, 2 ~ 2.5솔을 한 입장에서 당연히 합격했을 것이라 믿었다.

😰 탈락했다.

정말 충격이었다.

4학년 막바지를 달리면서 인턴을 하기 위해 많은 서류를 넣어보고 떨어져봤지만, 이렇게 충격이었던 탈락은 없었다.

결과가 나오기까지 주말을 제외하고 3일 정도의 시간이 소요되었으므로, 많은 사람들의 포토폴리오 및 자기소새서를 꼼꼼히 들여다 본 것으로 추측된다.

어떤 사람은 0솔을 하고도 붙었다고 주장하는 것을 보면, 합격 기준을 잘 모르겠다는 생각이 들기도한다. (이 사람 말이 거짓말일 수도 있다.)

오픈채팅을 퇴장할 때 600명 정도의 사람 중, 100명 정도가 2.5~3솔이었으므로 의문이긴 하다.

사람들이 블로그와 깃허브 Traffic이 증가되는 것을 확인하면서 이제 자소서를 보는 것 같다고 말하기도 했다.


결론

내 자신에 대한 메타인지가 부족한 것 같다.

네이버 카카오와 같은 빅테크 기업을 가고 싶은 생각에 열심히 공부하고 개발하고 있는 입장에서 교육을 해주는 프로그램에 입과하지 못하는 실력이라는 점이 충격으로 다가왔다.

당분간은 나를 좀 알아보는 시간이 필요할 것 같다. 내가 점검해야 하는 항목들은 다음과 같다.

  1. 실력이 부족한가?
  2. 아니면, 실력을 매력적으로 보여주지 못하는 것인가?

다음에는 더 좋은 개발자가 되어서 네이버에 도전할 것이다.

기다려라 네이버!!!!!

'끄적끄적 > 회고' 카테고리의 다른 글

카카오테크 부트캠프 해커톤 밥팟 서비스 회고  (1) 2025.03.02
2024년 회고  (0) 2025.01.04

+ Recent posts