항해99 7기 활동

항해99 13주차 WIL

달리는 꿈나무 2022. 8. 7. 20:02

1. 실전프로젝트 회고

 실전 프로젝트는 많은 것을 생각하게 된 시간이다.필자의 조의 실전 프로젝트는 여러 아이디어가 있었지만 8명의 공통점으로 음악을 즐겨 듣는다는 점이 있어서 음악 관련 사이트로 출발하게 되었다. 그 중 도엽님의 지인 분들 중 인디 아티스트 분들이 계셨고 나 또한 대학교 1학년 즈음에 음악 활동을 해본 적이 있어서 무명 음악가들을 위한 사이트를 만드는 것이 어떤가 생각했다. 이에 우리는 무명 음악가들의 음악을 스트리밍하고 음악가들이 자신을 알릴 수 있는 방송을 할 수 있는 사이트를 만들게 되었다.

 실전 프로젝트는 그리하여 기본적인 CRUD, Stomp를 이용한 채팅, 이를 1차 캐시로 저장할 수 있는 Redis로 디비와 채팅 서버 간의 트랜젝션을 최소화하는 방식, 모든 사용자에게 데이터를 보낼 필요없이 서버에게만 자신의 영상 데이터를 보내면 되서 1:N 형식 또는 소규모 N:M 형식의 실시간 스트리밍에 적합한 SFU 방식의 WebRTC 기술을 이용한 방송, SSE 단방향 방식으로 구현한 방송 알림 기능, 회원가입시 Notification 레포지토리를 통해 인증하는 메일 인증 기술, Prometheus와 Grafana를 통한 실시간 트래픽 관리 등 여러 기술과 방식이 들어갔다. 이외에 적지 못한 방식들은 추후 리뷰하면서 더 공부할 예정이다.

 

2. 내가 되고 싶은 개발자

 어디서 부터 시작해야할까, 사실 나는 개발자를 꿈꾼지 채 2년이 지나지 않았다. 불과 10년 전의 내 꿈은 변호사였다하면 믿을 것인가? 내가 관심있던 분야는 국제 정세와 법이었다. 시사를 공부하는 것을 좋아하고 경영학에도 관심이 많아 천성적으로 글을 쓰면서 남을 설득하는 것에 흥미를 느꼈다. 고등학교 때만 하더라도 나는 문과를 갔다. 실제로 내가 간 학과는 경영대학 소속이다. 수능이 끝나고 내가 바라던 대학에 아쉽게 가지 못하고 상위 대학의 인문계열을 갈 것인가 하위 대학의 경영계열을 갈 것인가를 고민하고 있었다. 부모님은 향후 미래에 과가 모든 것을 결정할 것이라고 하며 경영정보학부를 추천해주셨다. 경영정보학부? 경영학과가 버젓이 있는데 경영정보는 또 무엇인가. 천천히 설명을 읽어보니 IT에 관련된 기술을 배우면서 IT컨설턴트 혹은 웹 퍼블리셔, 데이터베이스 관리자가 되는 학부였다. 당시 고등학교 3학년 막바지였던 나는 오히려 경영학과에 가깝다 생각하여 지원하였고 붙어 입학했다.

 

 하지만 학교에서는 내가 생각했던 과목을 가르치지 않았고 SQL, JS, PYTHON을 가르치는 것이었다. 문과생이었던 내가 학과 하나로 바로 컴퓨터 계열에 입문한 것이다. 이에 1학년 때는 불만도 많고 공부에 지쳐 제대로 하지 않았다. 이후 군대를 갔다 오고 내 미래에 진지하게 고민하면서 학과 수업에 집중하게 되었는데 데이터베이스 관련 과목들에 많은 관심을 갖게 되었다. 당시 데이터베이스 실전이라는 과목에서 SQLD를 따면 가산점을 준다 하여 자격증도 딸 겸 열심히 해보았다. SQLD를 획득한 나는 데이터베이스 관리자에 관심이 많이 생겼고 데이터에 관련한 과목들(탐색적 데이터 분석, 머신 러닝, 텍스트 분석, 데이터 프로그래밍)을 배웠다. 이 때 파이썬을 접했고 아나콘다를 통해 IDE 개념에 접근하며 파이참, VSCODE를 접했다. 통계 과목을 수강하면서 ADSP를 땄고 점점 프로그래밍에 재미를 붙이고 있었다. 

 

 굳이 통계에 갇혀야하는가? 파이썬을 배우면서 나는 통계를 하기 위해 쓰는 프로그래밍이 아닌 직접적인 프로그래밍 개념을 배우고 싶었고 이에 컴퓨터 공학과 융합 전공을 시작했다. 이에 절차적 프로그래밍, 객체지향 프로그래밍, 함수형 프로그래밍의 개념을 배우고 자바, 씨언어, 씨플플 등을 추가로 배우고 리눅스 CLI 또한 접했다. 그렇게 자바를 주 언어로 선택했고 자바를 배우면서 내가 배웠던 데이터베이스 기술들을 접목하다보니 스프링이 보였고 ORM을 통한 데이터 관리를 주특기로 밀고 있다.

 

 나는 어떤 개발자가 되고 싶은지 설명하기 위해 먼 길을 돌아왔다. 보통 자소서의 경우 두괄식으로 표현하겠지만 이건 내 블로그니까 상관없다. ;) 필자가 이렇게 먼 길을 돌아온 이유는 그만큼 필자의 진로가 많은 변화를 거쳤다는 것을 보여주고 싶었기 때문이다. 또한 이러한 변화를 거치면서도 내가 배웠던 모든 지식들은 잊혀지지 않았다는 것을 말해주고 싶었다. 시사 상식은 물론 법과 정치, 사회 문화, 생활과 윤리 등 문과 지식들은 아직도 종종 책을 읽으면서 상기시키고 있다. 개발자로서의 스킬이나 CS는 당연히 공부 중에 있다. 대학교 저학년 때 배웠던 통계 관련 기술들은 데이터 관리자에게 없어선 안 될 스킬이니 계속 주시 중이다. 적응을 잘 한다 표현해야하나 융합형 인재라 해야하나 많은 표현 방법이 있지만 필자는 '레고 같다'라고 표현하고 싶다. 개발자는 끊임없이 공부를 하는 직업이다. 남들이 인스타에 여행을 가던 클럽을 가던 개발자는 카페에서 랩탑을 펼치고 구글에서 키워드를 치며 블로그와 기사, 공식 문서들을 계속 바라보아야한다. 필자가 어렸을 때 부터 쌓아온 지식들 모두 필자의 개발자 진로에 관련된 지식이라 보고 싶다. 학교 선배가 말해준 표현이 있는데 개발자들은 도메인 지식도 배우면서 개발자 본연의 진로에 충실한 공부를 진행해야한다는 것이다. 필자는 지식들을 레고처럼 쌓아올리면서 필자가 궁극적으로 추구하는 개발자의 모습을 쌓아올리고 싶다.

 

 필자가 항해99에서 배웠던 가장 큰 점은 지식이 아니라 '지식을 갈구하는 태도'다. 구글을 키고 당연스럽게 키워드를 치며 블로그들을 펼쳐놓는 것, 그리고 그 글들의 한 자 한 자를 연구하면서 새벽 4시까지 랩탑 앞에 있는 태도. 필자는 이것을 조원들에게 많이 보았고 그것을 모방하면서  필자 또한 그것이 일상이 되었다. 또한 협업을 하면서 프론트와 디자인에 대한 지식도 필요하다 느끼면서 간간히 프론트 코드도 찾아보았다. 이 태도는 내가 죽을 때까지 잊지 못하며 해이해질 때 이 블로그를 보면서 지금의 기억을 되새길 것이다. 항해99에 너무나도 큰 감사의 인사를 전하고 필자를 개발자로 만들어 준 같은 반 분들, 매니저들께 앞 길을 응원하며 항해99를 마치고 싶다. 그동안 감사했습니다. !</>!