[부스트캠프] Day 88 회고

Gamchan Kang·2024년 12월 23일
0

최근에 생각이 참 많아진다. 생각이 많을 때마다 하나 씩 풀어내고 싶어서 글을 쓴다. 글을 쓰면서 드는 생각은 1. 내가 완벽하다고 느끼는 생각에도 허점이 많구나 2. 이런 생각이 얼마나 유용할까? 이다. 오늘 회고는 부스트캠프에서 일어난 일이 아닌, 왜 개발자가 되기로 마음먹었고, 현재의 나는 어떻게 이루어졌는지를 적어보려고 한다.

처음 개발을 접한 시점은 17년도, 새내기였다. 전자공학과 1학년 필수 과목 중 C 언어 과목이 있다. 다른 동기들이 그랬던 것처럼 아무 생각 없이 들었었다. 코딩을 해본 적도 없고, 뭘 할 수 있는지도 몰랐기 때문이다. 그냥 실습 수업에서 교수님의 라이브 코딩을 따라 치고, 그걸 줄줄 외웠다. 다행히 학점은 잘 나왔고, 이만하면 되겠다라고 생각했다.

그러던 중, 2학기 C 언어 심화 과목 중간 고사를 준비할 때였다. 동아리방에 있는 컴퓨터에 devcpp를 설치해 여느 때처럼 교수님의 코드를 따라쳤다. 지금 기억을 더듬어 보면 그 당시 코드는 윤년을 구하는 코드였다. 이해가 부족하다고 느꼈다. 그리고 해당 년월을 입력하면 달력을 보여주는 코드를 짜고 싶어졌다. 대략 3~4시간 동안 끙끙댔다. 인터넷에 n년 1월 1일을 구하는 로직을 검색해보기도 했다. 그 결과 만족스러운 달력이 콘솔 화면에 흰 글씨로 출력됐다.

전자공학과 학년이 올라가면서 간간히 코드 작성 과제가 있었다. 주로 Matlab이었다. 재미가 없었다. 아마 지금 돌이켜보면 유연함과 확장성이 부족하기 때문이라고 보인다. 가끔씩 파이썬으로 코드를 작성하라는 과제도 있었지만, 대부분 Matlab을 사용했다. 그리고 무엇보다 그 당시 나는 음악을 1순위로 두었다. 앨범 작업에 사활을 걸었고, 전공은 그냥 시험을 적당히 잘 볼 정도로 공부만했다.

4학년이 됐다. 졸업 프로젝트를 신경써야 됐다. 전자공학의 신호 처리 분야가 그나마 음악과 밀접한 프로젝트였다. 그 중에 음성 신호를 다루는 교수님이 계셔서 그 교수님 밑에서 졸업 프로젝트를 시작했다. 그런데 교수님은 AI 모델을 활용한 신호 분석 혹은 활용 프로젝트를 원하셨다. 내가 AI에 대해서 아는 건 선형대수학이랑 벡터 미적분이 많이 활용된다는 사실 밖에 없는데, 까마득했다.

친구한테 물어보며, 인터넷을 뒤져가며 어찌저찌 1학기 동안 공부했다. 생각해보니, 전자공학과에서 프로젝트를 진행한 적이 없었다. 전부 주제와 정보가 주어진 환경에서 단순히 구현하는 실험만 했었다. 대충 오실로스코프로 이것 저것 만들어보는데, 내 아이디어가 개입하는 순간이 별로 없었다. 그렇게 실험을 싫어하게 됐고, 학과 프로젝트와는 거리를 많이 두었다. 1학기는 교수님의 피드백으로 감만 잡고 끝났다.

그런데 1학기 프로젝트를 진행하면서 이 분야로 꼭 가야한다는 생각이 들었다. 오디오 데이터를 분석하면서 생긴 학문적 호기심이 첫째였다. 그리고 모델에 내 아이디어를 적용할 수 있어 흥미가 생겼던 이유가 둘째였다. 마지막으로 내가 전자공학과에 온 이유인 음향 장비 만들기가 가능할 것이라는 희망이 보였다. 데이터만 확보하면 내 인사이트를 구현할 수 있다니! 당시에는 참 달콤한 환상이었다. 1학기 프로젝트 레포

지도 교수님에게 찾아가 석사로 들어가고 싶다고 말씀드렸다. 아쉽게도 교수님 정년이 2년 밖에 남지 않아서 석사를 받지 않는다고 하셨다. 교수님은 많은 조언을 주셨다. 우선, 랩실을 추천해주셨다. 지금 생각해보면 철면피로 추천서를 부탁드릴 걸 싶었다. 그리고 커리어 관련 조언을 해주셨다. 적어도 한 달에 하루는 최신 논문 경향을 찾아보기, 컴퓨터 공학 복수전공 혹은 부전공하기. 나는 이미 4학년이였기 때문에 복수전공은 부담이 많이 됐다. 그래서 바로 다음 학기 부전공을 시작했다.

처음 부전공 시작 과목은 다시 C 언어였다. 그때와 다른 점은 구름으로 모든 작업이 진행됐다는 점이 있었다. 또 약간의 알고리즘이 들어갔고 원어 수업으로 진행됐다. 다시 배우는 C는 재밌었다. 무엇보다 지금까지 연락하는 스페인 친구를 만날 수 있었다. 재밌게 공부하고, 2학기 졸업과제를 치열하게 했고, 재밌게 놀았다. 특히 졸업과제가 인상 깊었다. 이번에는 아예 주제를 바꿔 음원을 넣으면 악기 별로 악보를 만들어주는 모델 파이프라인을 구성했다. 이번에는 pre-train 모델을 그대로 사용하는 거이기 때문에, 모델 논문을 빡세게 리뷰하고 파이프라인 작동 결과와 결부지었다. 아무것도 모르지만 demucs 논문을 처음부터 끝까지 리뷰하고 정말 많은 걸 배웠다.

결국 5년 동안 학교를 다니게됐다. 마지막 년도에는 다양한 활동을 우선 순위에 두었다. AI 과동아리에서 스터디를 7개 정도 했었다. 파이토치와 같은 기초적인 스터디부터 하이퍼커넥트 기술 블로그 리뷰까지 다양한 단계, 분야를 다뤘다. 특히 하이퍼커넥트 리뷰와 파이썬 스터디로 컴퓨터 구조와 운영체제 지식을 처음 체계적으로 접했다.

스터디 활동을 열심히 했다고 하나, 트랜스포머 구조를 설명할 수 없을 정도로 AI 지식이 부족했다. 주워 들은 정보는 많은데, 지식의 체계화가 부족했다. 간단한 구조와 파편적인 지식이 머리 속에 산재되어있어 무엇이 어떻게 적용되는지 정리가 부족했다. 이 부분에서 답답했던 것 같다. 무언가를 많이 했는데, 왜 해야했는지, 어떻게 사용할 수 있는지 스스로 정리가 안 됐다. 열심히 하면 된다는 마인드로 열심히만 했다. 생각 정리가 부족했다.

이후 졸업을 했고, 여러 기업에 이력서를 넣었으나, 당연하게도 떨어졌다. 가장 아쉬웠던 곳이 최종 면접까지 갔던 스타트업 인턴 면접이었는데, 기초적인 지식이 부족해 떨어졌다. 아쉬웠다. 다행히도 절치부심하는 계기가 됐고, 더 체계적으로 정리하고 싶어 인프런에서 CS 기초 스터디를 모집했다. 인공지능이 아닌 CS 기초인 이유는 가장 취약한 분야라고 생각했기 때문이다.

여기까지가 부스트캠프 참여 전 흐름이다. 지금 생각해보면, 부스트캠프 참여 전에는 그래도 좀 아는 줄 알았다. 막상 부스트캠프에 참여해서 더 깊은 내용을 보니, 내가 우물 안 개구리였음을 실감했다. 지금은 내가 무엇을 모르고 아는지 명확하게 구분하는 것에 집중하고 있다. 지금 당장 모든 것을 알 수 없기 때문이다. 또, 내가 모르는 것이 무엇인지 조차 명확하지 않기 때문이다.

profile
Someday, the dream will come true

0개의 댓글