개발자가 되기 위한 지금까지의 과정
2025년은 개발자가 되려 하는 나에게 시작과 같은 의미를 가질 수 있는 해이다. 2022년 편입학을 통해 컴퓨터학부에 입학해서 처음으로 컴퓨터와 관련된 공부를 시작했고, 3년의 학교생활을 끝으로 졸업(정확히는 아직 졸업이 아닌 수료)을 했다.
23년 6월, 처음에 아무것도 모르고 주변에서 다들 팀 프로젝트를 하는 거를 보고 나도 따라서 웹 페이지를 만드는 프로젝트를 시작했고, 거기서 프론트엔드로 참여한 인연으로 나는 프론트엔드 개발자를 꿈꾸고 있다. 이후 IT 동아리에 들어가서 너무나도 많은 경험을 하고, 개발자가 되기 위한 초석을 다지기도 했다.
그렇게 1년 반동안 개발자가 되기 위해 준비를 했고, 이제 학교를 떠나 신입 개발자가 되기위한 시기를 만났다. 이번 글은 사회로 나갈려면 지금 어떤 것들을 준비해야 하는지 정리해 보려고 한다.
2% 채우기
1년 반동안 정말 이것저것 많은 경험들을 했던 거 같다. 전공, 프로젝트, 동아리 활동 등 이것저것 많은 준비들을 했지만, 본인이 느끼기에는 100% 완벽하게 준비된 것들은 아직 없는 거 같다. 프론트엔드를 하면서 코드를 작성하면서 준비한 것들도 부족한 것들이 있고, 다른 활동들도 대부분이 문서로 정리되지 않아 나의 활동들을 증명할 방법들이 없다.
올해는 지금까지 마구잡이로 쌓아온 경험들에 살짝 아쉬웠던 부분들인 2%를 채워서 100%로 만드는 일들을 하고 싶다. 2025년 초, 채워야 할 부족한 2%는 다음 내용들이다.
자바스크립트 공부하기
놀랍게도 나는 아직까지 자바스크립트를 책이나 영상을 보면서 공부해 본 적이 없다. 그럼 어떻게 처음 프론트엔드를 시작했는가? 그냥 인터프리터 언어니깐 파이썬이랑 비슷하네?? 이 생각으로 자바스크립트는 공부하지 않고 바로 리액트를 공부했다. 그러다 보니 자바스크립트에 대한 이해도가 상당히 부족한 상태에서 개발을 시작했고, 거기서 발생한 기본기 부족은 아직도 더러 존재하고 있다. (자바스크립트의 primitive 타입과 reference 타입이 구분되어 있는 것도 최근에 알았다....)
그렇다고 지금까지 자바스크립트 공부를 아예 안 한 건 아니다. 하지만 공부한 방법이 개발을 하다가 모르는 개념이 나왔을 때 검색을 해서 이해하는 방식이었다. (기본기가 부족해서 검색해도 이해하지 못한 개념들도 있었다...)
프론트엔드 개발을 하면서 자바스크립트의 개념보다는 타입스크립트나 리액트의 개념을 접하는 경우가 더 많은거 같다고는 느끼지만, 사실 타입스크립트는 리액트에서 타입의 개념이 추가된 언어이고, 리액트는 자바스크립트기반 라이브러리이다. 그래서 프론트엔드 개발에 근간이 되는 자바스크립트를 제대로 공부해 볼 생각이다.
최근에 모던 자바스크립트 Deep Dive책을 통해 공부를 시작했고(900페이지가 넘는데 이제 50페이지), 이후에 타입스크립트와 리액트도 부족한 2%를 채울 방안을 모색할 예정이다.
트러블슈팅 기록하기
지금까지 진행한 프로젝트 중에 가장 대표적인 프로젝트는 동아리 사이트인 코테이토 프로젝트 이다. 2023년 10월부터 시작해서 1년이 넘는 기간 동안 프로젝트를 진행했다. 단순히 초기 구현만 하고 끝나는 프로젝트가 아닌 실제 사용자로부터 피드백을 받으면서 지속해서 기능을 발전시킨 만큼 다양한 이슈들이 있었다. 해당 블로그에도 코테이토 프로젝트에서 기술적인 부분과 관련해서 업로드한 게시글이 있다. (두 개밖에 없지만)
지금까지 나의 개발 실력을 보여줄 수 있는 방법은 코테이토 프로젝트의 결과물을 보여주는 것이다. 그렇다고 평가자가 깃허브에 들어가서 커밋 기록을 추적해 가며 내가 작성한 코드를 하나하나 보는 것은 상당히 번거로운 일이고, 평가자가 그렇게까지 시간을 써가면서 나의 코드를 확인하는 일은 발생하지도 않을 것이다.
그러면 내가 이 프로젝트를 통해서 나의 개발 실력을 쉽고 정확하게 보여줄 수 있는 방법은 무엇일까? 그것은 내가 개발을 하면서 고민한 기록을 보여주는 것이다. 현재 내가 어떤 내용을 모르고 있어 고민이 발생했고, 고민의 결과를 통해 새롭게 배운 내용은 어떤 것인지, 이런 내용들을 기록하면서 내가 어떤 난이도의 문제를 해결할 수 있는 실력이 되는지 보여주는 결과라고 생각한다.
아직 블로그에 적지 못한 트러블슈팅이 몇 개 존재하고, 앞으로 개발을 하면서 발생할 고민들이 발생을 할 텐데 올해는 이런 트러블슈팅 내용들을 블로그에 정리하는 시간을 좀 더 가지려고 한다.
알고리즘 공부하기
개발을 시작하기 이전에 전공 외적으로 시간을 쏟아 공부했던 분야는 알고리즘이었다. 어느 정도였냐면 코딩테스트에 나오는 범위를 넘어서 까지 공부를 했었다. 그러다가 개발과 전공수업을 병행하며 지내다 보니 알고리즘을 따로 시간을 내서 공부하지는 않았다.
그래서 알고리즘을 다시 공부하기로 한 이유는 무엇일까? 그 이유는 절대 코딩테스트는 아니다. 사실 단순히 코딩테스트를 준비하겠다 하면 따로 공부를 하면서까지 준비를 하지 않아도 되긴 하다. 그럼에도 불구하고 알고리즘을 공부하기로 계획한 이유는 수학적인 문제 해결 능력을 기르기 위해서이다.
알고리즘에서 공부한 내용을 프론트엔드 개발을 하면서 사용하는 일이 있었는가?라고 질문이 들어오면 그에 대한 답변은 NO이다. 그러나 알고리즘을 공부한 게 프론트엔드 개발에 도움이 되었나? 라고 질문을 하면 나는 YES라고 대답할 것이다. 위에서 얘기했듯이 자바스크립트도 모르는 상태에서 리액트를 사용해 프론트엔드 개발을 시작했지만, 그게 또 가능했던 이유는 알고리즘을 공부하면서 기른 문제 해결 능력이 있었기 때문이라고 생각된다.
그동안 다른 공부보다 우선순위가 밀린 이유로 알고리즘을 소홀이 여겼지만, 예전보다 시간적인 여유가 생긴 만큼 알고리즘 공부를 다시 시작해 보려고 한다. 이론적인 내용들을 정리하고 블로그에 작성하면서 예전에 했던 알고리즘 공부를 다시 시작해보고 싶다.
2025년의 최종 목표?
올해의 당연한 최종 목표는 취업이다. 위에 적지 않은 간단한 계획들도 있지만, 이 계획들의 목적들은 결국 취업에서 만나게 된다.
https://hochi-dev.tistory.com/5
나는 왜 프론트엔드 개발자가 되어야 하는가
2024년 7월 기준, 필자는 프론트엔드 개발자가 되고 싶어 한다. 하지만 목적을 가지고 앞만 보고 달려갔을 뿐, 그 이유는 중요하게 생각하지 않았다. 뒤에서 나오는 이야기이지만, 나의 꿈이 프론
hochi-dev.tistory.com
블로그 첫 글에서 본인의 인생 얘기가 포함되어 있는데, 여기서 보면 원래 컴퓨터를 공부하기 이전인 2021년에 항공정비사로 취업을 하는 게 원래 인생 계획이었다. 그러나 어쩌다 보니 취업의 일정이 4년이나 미뤄지게 되었고, 이제 새로운 길로 취업을 본격적으로 준비하고 있다.
올해의 최종 목표를 달성하기 위해 계획을 세웠는데, 오늘 기록한 계획들을 꾸준히 실천하면서 취업에 성공하는 2025년을 만들고 싶다.