들어가기에 앞서 회고가 매우 늦었다… 계속 써야지 써야지 하다가 미루게 되는 마성의 글쓰기.. 언제 출간할지 모르겠지만 일단 계속 끄적일 것이다.
군대에서 시작한 야심찬 계획
맞다. 나는 올해 초에 국군의 의무를 수행 중이었다. 3월 1일. 민간인 신분으로 다시 태어나는 날까지 나는 대다수의 말년을 앞둔 병장들이 그러하듯 미래에 대해 생각하게 되었다.
자기 계발서를 너무 많이 읽었던 탓인가? 머릿속에서는 생각의 소용돌이가 일어났다. 복학하기에 시기도 애매하고 (지금에 와서 생각해 보니 핑계다… 그냥 귀찮다고 생각했을 뿐인 것 같다.) 생각을 정리할 시간이 필요하다고 생각했기 때문에 휴학을 연장하고, 그래도 그냥 쉬기만 하면, 나태해질 것이 뻔하기 때문에 나는 이것저것 계획을 세웠다. 작게는 하루하루 어떤 식으로 스케줄을 나눌지부터 크게는 1년 휴학을 계획했기 때문에 1년 동안 어떤 활동을 할 것인지 어떤 성과를 낼 것인지 생각했다.
그렇게 나의 1년 계획이 생기게 된다.
- 나는 웹 개발자를 목표로 하고 있다. 백엔드와 DB, CS는 학교에서 배울 수 있기 때문에 비교적 학부에서 시도하기 어려운 프론트엔드 개발을 공부해 보자 Javascript는 내가 알고 있는 언어 중에 가장 자신이 있는 언어니까 1년 동안 하면 잘할 수 있겠지.
- 이력서를 작성해 보자. 내 목표는 최대한 빠르게 실무를 경험하는 것이다. 그렇다 취업이 하고 싶다.. 나는 개발자가 되고 싶다. 취업을 위해선 이력서와 포트폴리오를 빼먹을 수 없기 때문에 이런저런 프로젝트를 진행해 보면서 포트폴리오와 이력서를 작성하자. 아무것도 없는 이력서라도 계속해서 추가한다면, 뭔가 되겠지.
결과를 먼저 말하자면, 정말 어리석은 생각이었다. 원대한(?) 계획에 비해서 지금까지의 결과는 내가 만족할 수준은 아닌 거 같다고 생각한다. 아니 오히려 실패했다고 보는 게 맞겠지. 공부는 하면 할수록 공부할 것이 배가 되어 늘어났고, 이력서는 작성 시도조차 해보지 않았으며, 이렇다 할 프로젝트도 없다. 하지만 개인적으로 이번 상반기는 전체적으로 만족스러웠다. 계획을 한 개도 지키지 못했지만 만족스러운 상반기였다고? 역설적으로 들릴지도 모르겠다.
네트워킹 활동
내가 쉬기 전에 혼자 코딩을 하면서 (그마저도 얼마 하지 않았다.) 느낀 점은 절대 혼자서 공부하는 건 좋은 방법이 아니라는 것이다. 나는 나에 대한 평가가 후한 편이다. 그리고 게으르기 때문에 간접적이든 직접적이든 감시자가 필요하다. 그래서 생각한 것은 무엇을 하든 다른 사람들과 함께 하는 활동을 참여하자는 것이었다. 다른 사람들과 같이 공부하게 되면, 보는 눈이 있기 때문에 내가 계속 공부를 할 것이고, 다른 사람의 것과 내 것을 비교해 좀 더 객관적인 평가를 할 수 있게 되고, 타인에게 배울 점을 얻어 갈 수 있다고 생각했다.
그래서 나는 상반기에 크게 두가지 활동을 하게 되었다. 하나는 교내에서 진행하는 연합 동아리인 멋쟁이 사자처럼 또 하나는 노마드코더에서 진행하는 웹기초 10주 스터디이다. 타인과 함께하는 활동을 한 건 정말 신의 한 수 였다. 이렇게 활동하지 않았다면, 나는 군대에 가기전의 나보다 발전하지 못했을 거라고 믿어 의심치 않는다. 게으른 내가 이나마 결과를 낼 수 있게 만들어준 사람들에게 정말 감사하는 마음이다.
멋쟁이 사자처럼 가입
멋쟁이 사자처럼은 대학 연합 동아리이다. “컴퓨터과학 비전공자들도 프로그래밍 기초 지식을 배워 자신만의 웹서비스를 만들어 이를 통해 꿈을 실현할 수 있도록 하는 것” 이것이 동아리의 모토이다. 나는 멋쟁이 사자처럼에서 협업하는 과정과 함께 공부하는 환경을 기대하고 가입하게 되었다.
우리 학교 멋쟁이 사자처럼은 3가지의 파트로 나누어 지원할 수 있다. 프론트엔드, 백엔드, 기획디자인. 올해 나는 프론트엔드를 공부할 생각이기 때문에 프론트엔드 파트에 지원했고 합격했다.
하지만 나는 멋쟁이 사자처럼 활동을 하면서 기대한 만큼 실망을 많이 했다. 일단 세션은 확실히 비전공자들을 위한 난이도이기 때문에 나에게는 너무 쉬웠고, 별로 도움이 되지 않았다. 그마저도 작년에 이수한 학생들이 운영진이 되어서 세션을 진행하는 만큼 나에게는 세션의 완성도가 높아 보이지 않았다. 학생들은 주어진 코드를 따라 치기 바쁘고 세션이 끝나고 얻어 가는 게 없는 것 같았다. 이는 내가 비전공자들을 위한 동아리라는 것을 간과해서 그렇게 느낀 게 큰 것 같다.
다음으로 프론트엔드 지망생이 턱없이 적었다. 비전공자들을 위한 동아리라지만, 사실 나와 같이 컴퓨터 공학과이거나 개발과 관련된 다른 세부전공을 가진 학생들이 대외활동을 위해 지원을 많이 했다. 그러다 보니 역시 백엔드에 인원이 프론트엔드 지원 인원보다 3배는 많았다. (왜 인지 모르겠지만 다들 백엔드를 좋아한다.) 나와 프론트엔드에 대해 같이 공부하고 나눌 사람은 적었고, 심지어 상반기에는 3가지 파트가 공통세션인 HTML, CSS, JS를 공부 했기 때문에 집에서 학교까지 편도 2시간 30분이 너무 아까웠다.
실망하던 나에게 한줄기 빛 노마드코더
군대에서 전역하기 전에 어느 때와 다름없이 인스타를 염탐하던 중 발견했다. 평소 노마드코더의 소소한 팬인 나는 10주 스터디를 한다는 공지를 보고, 바로 신청했다. 니코쌤도 만날 수 있고 다른 사람들과 공부도 할 수 있다는 점이 나에게 매력적으로 다가왔다. 또한 내 주변에는 또래 친구들이나 개발을 지망하는 전공자들만 가득했기 때문에 비전공자분들과 다른 경험을 가진 분들이 개발 문화에 흥미를 느껴 발을 들인 이야기도 듣고 싶었다. 이러한 것들이 내 시각을 넓혀줄 거라고 생각했기 때문이다.
10주 스터디는 기대 이상이었다. 나와 함께한 대부분이 성실하게 스터디에 참여했을 뿐 아니라 우리는 추가적으로 사이드 스터디나 프로젝트를 만들어서 더 많은 공부를 함께했다. 조금 과장해서 말하자면, 이렇게 주도적이고 열정적인 사람들이 모인 스터디는 나는 처음 경험해 본 것 같다.
스터디를 하면서 전반적인 웹을 학습하는 것도 좋았지만, 내가 가장 만족했던 부분은 여러 사람들의 여러 가지 이야기를 들을 수 있었다는 것이다. 현재 개발 조직에서 일을 하고 있는 주니어, 시니어 개발자분들과의 이야기*(언제 내가 페이팔 시니어 개발자랑 이야기 해보겠는가!)*는 내가 진로를 정하거나 공부를 함에 있어서 방향성을 제시해 주었고, 개발을 하다가 막히는 부분이 있으면 그들의 노련함과 경험을 더해 친절하게 설명해 주시고, 심지어 내가 생각해보지 못한 문제 해결 방법이나 도움이 될 만한 레퍼런스를 많이 공유해 주셨다. 이는 정말 큰 도움이 되었다.
나와 함께 공부를 하거나 먼저 이수한 사람들은 저마다 개성 있는 인생 이야기와 개발 문화에 발을 들이게 된 이유, 소소한 스터디팁 들을 주고 받으며 같이 성장하는 기분이었다. 특히 다양한 나이대, 다양한 문화를 경험한 사람들을 만나서 이야기를 나누다 보니 좁은 시야에서 경험한 내 생각이 확장되는 느낌이었다. 사실 상반기에 내가 가장 고민하던 부분은 “취업을 함에 있어서 어떤 언어, 어떤 스택으로 직장을 선택해야 하는지 만약 결정 한 기술을 변경하게 된다면 리스크가 있는지”와 같은 문제였는데, 정말 걱정할 필요가 없었을 정도로 크게 중요하지 않다는 답변을 받았다.
개발자는 결국 주어진 문제에 대해서 방법을 생각하고 해결하는 사람이기 때문에, 어떠한 언어를 사용하거나 기술을 사용하냐는 부가적인 도구일 뿐입니다. 개발을 함에 있어서 ”어떤 언어나, 프레임워크를 사용하는 가” 보다는 ”어떤 방식으로 문제를 해결할 것 인가” 가 더 중요합니다.
-멋진 사람-
세세하게는 기억하지 못해서 비슷한 뉘앙스로 적어보았다. 그렇다 나는 나무만 보고 있던 것이다. 본질을 일깨워주는 답변이었고, 이 답변은 내가 비슷한 고민을 할 때 좋은 나침판이 될 것 같다.
이외에도 스터디에서 주마다 TA분들이 발표해 주신 개인적인 경험이나, 개발에 관련된 발표들을 보면서 정말 도움이 많이 되었다. 그래 내가 생각했던 타인과의 활동은 이런 것이었다. 이 스터디를 진행하면서 진행하기 전의 나와 지금의 나는 정말 다른 사람이 되었고, 이에 힘입어 리액트 3기 스터디도 신청했다. 앞으로의 활동도 너무 기대된다.
Next.js 블로그 개발
그렇다! 지금 보고 있는 글이 출간된 곳 역시 내가 만든 블로그이다. 사실 블로그를 만들 생각은 없었는데, React 공부를 시작하면서, 다른 사람들의 좋은 글들을 읽으면서 나도 좋은 글을 작성하고 싶기도 했고, 내가 만난 문제들을 고민하고 해결하는 과정을 기록하는 것에 대해서 중요성을 느껴서 기록할 공간을 만들어 보자는 생각을 하게 되었다 (지금에서야 말하지만… 다시 돌아간다면 만들지 않을 것이다.)
사실 기술 블로그의 가장 큰 장점은 회고와 내가 만났던 문제에 대해서, 그 문제를 해결했던 과정을 기록해서 내가 성장하는 과정을 관찰하는 것이라고 생각한다. 하지만 개인적으로 블로그를 직접 개발하게 되면 추가적인 기능이나 디자인을 계속 고려하게 되는 거 같다.(지금도 내 블로그의 디자인은 마음에 들지 않아 다시 만들 것이다.) 정작 중요한 블로그의 글들의 퀄리티는 뒷전으로 한 채 말이다.
물론 블로그를 만들면서 여러 가지 지식도 얻고, 개발하던 과정에서 Gatsby, Next와 같은 react 기반 프레임워크들을 더 잘 알게 되었지만, 과거에 나에게 조언할 수 있다면.. 그냥 velog를 열심히 쓰라고 말해주고 싶다.
처음에 Next 12버전을 이용해서 블로그를 작성하다. 13 app 라우터에 흥미가 생겨 갑자기 마이그레이션하게 되었다. 이로 인해서 엄청난 시간이 들었고 무수히 많은 오류를 마주했다. 지금 생각해 보면, 블로그는 동적인 데이터가 없기 때문에 app 라우터를 사용할 이유가 전혀 없다. (이땐 그냥 멋있어 보였다..) 차라리 React를 사용해 github에 정적 배포하거나, 잘 만들어진 Next 탬플릿 Gatsby 탬플릿을 이용하는 게 좋다고 생각한다. 좋은 탬플릿은 많고 이들은 좋은 글을 작성하는 데 집중하도록 만들어주기 때문이다!
내가 계속 블로그 만드는 걸 반대하는 것처럼 말했지만 블로그 만들기는 사실 큰 도움이 되었다. 내가 사용할 것을 만드는 것이기 때문에 개발하면서 애정도 많이 가고, 직접 기능을 생각해서 구현하는 재미가 쏠쏠했다. 지금은 글을 발행할 때마다 새로 빌드를 해줘야 하는 데 다음에는 노션이나 데이터베이스에 연결해서 실시간으로 발행할 수 있도록 만들어 볼 예정이다. (물론 못생긴 디자인도 좀 바꾸고..)
그래서 무슨 말이 하고 싶은 건데?
혹자가 계획대로 성공한 게 있는지 나에게 질문한다면, 단언할 수 있다.
아니 계획대로 된 게 하나도 없다!
하지만 나는 이번 상반기를 꽤나 보람차게 생각한다.
상반기를 보내면서 드는 생각은 역시 인생은 계획대로 되지 않는다는 것이다. 계획은 항상 수정될 수밖에 없다. 뜬금없이 생각도 못 한 사건이 터지거나, 결정할 때와는 다른 생각을 가질 수 있기 때문이다. 하지만 뜻밖의 사건은 뜻밖의 행복을 가져다주기도 하는 것 같다. 기대했던 일에 대해서 실망하기도 하고, 전혀 기대하지 않았던 곳에서 너무 즐거운 일을 경험할 수도 있다는 것을 알게 된 상반기였다.
역시 계획대로 되지 않는다면, 내가 할 수 있는 일은 그저 내가 지금 좋아보이고 하고 싶은 일을 하는 것이다. 올해 하반기도 멋진 사람들과 여러 가지 활동을 하면서 더욱더 즐거운 경험을 하고싶다. 하반기 회고를 작성 할 때의 달라진 나의 생각은 어떨까 몹시 기대된다. (일단 학교부터 가자…)