본문 바로가기

카테고리 없음

2024년 회고

안녕하세요 프론트엔드 개발자가 되고픈 김재균입니다.

 

그동안의 글들은 거의 기술 트렌드, 기술적 지식, 트러블 슈팅, 나의 프로젝트를 중심으로 다뤄왔던 것 같은데 이번 글은 저의 1년간의 성장과 경험을 주로 다루는 글입니다. 회고가 처음이다 보니 부족한 모습을 보여도 양해 부탁드립니다.

 

프로젝트 부분

우선 2024년의 프로젝트 부분에서 저는 꽤 많은 성장을 이루었다고 보고 있습니다.

 

처음으로 체계적으로 진행하고 성장의 발판이 되었던 GSM-Networking (학교 동문 커뮤니케이션 서비스)로 발돋움을 거쳐

친구들끼리 재미로 진행했지만 가장 많은 성장을 거둔 GSM-GOGO (학교 체육대회 서비스), 

저를 더욱 탄탄하게 해 주었던 Hello-gsm (학교 입학 지원 서비스)까지

 

이렇게 3개의 프로젝트를 진행하였습니다.

 

1-1 GSM-Networking

처음 GSM-Networking은 처음부터 체계적으로 만들어진 프로젝트에 중간에 합류를 거쳤었습니다.

솔직히 어떻게 해야 하나 걱정도 많이 되었지만 만들어진 코드를 확인하며 제일 많은 성장을 거두었던 것 같습니다.

 

그러면서 React, Next, Storybook, React-Query 관련 지식들이 엄청 많이 늘었고, 1학년때에는 파일 구조는 신경 쓰지 않고

한 파일에 코드를 다 썼는데 한번 체계적인 시스템을 겪고 나니까 오히려 더 편하고 유지보수 하기 쉬웠습니다.

 

1-2 GSM-GOGO

두 번째 GSM-GOGO는 제일 많은 성장을 거둔 프로젝트라고 생각하는데 이 프로젝트는

세팅부터 유지보수까지 전부 처음부터 시작해서 더 뜻깊었던 것 같습니다.

 

이 프로젝트는 제 친구들과 하는 프로젝트이다 보니 그때당시의 신기술을 조금 많이 도입을 했었습니다.

프론트엔드 스터디를 하면서 알았던 Vite, Debounce, PWA 기술들을 도입했던 기억이 있습니다.

 

또, 이 프로젝트하면 제일 기억에 남는 것은 Draggable 라이브러리 사용과, 선배님들의 피드백 등이 있었습니다.

 

Draggable 라이브러리는 당시 포메이션이라는 기능이 생기면서 어떤 라이브러리를 사용할까 하다가 나온 기술이었는데

이 기술을 적용시키기 위해서 3일 정도는 관련 코드만 붙들면서 살았던 기억이 있습니다.

 

자세한 블로그는 -> https://jaegyunfe.tistory.com/16

 

Draggable 이용해서 축구 포메이션 만들어보기

1. Draggable 이란? React-Draggable은 드래그로 아이템의 순서를 변경하기보다, 컴포넌트를 드래그해서 위치를 옮기는 기능에 강점이 있는 라이브러리입니다. 2. React-Beautiful-DnD, React DnD랑의 차이점은?

jaegyunfe.tistory.com

 

선배님들의 피드백 같은 경우에는 서비스를 런칭하면서 생긴 이슈들을 선배님들이 캐치해서 최대한 빠르게 고치려고 했고 고쳤던 기억이 있습니다. 당시 서비스 런칭에만 급급하게 준비했던 부분을 반성하게 되었고 이미 서비스는 런칭이 되었고 이슈는 터졌으니 급한 상황에서 더 성장하게 된 계기가 되었습니다.

 

1-3 Hello-gsm

세 번째 Hello-gsm은 내 기술을 더욱 탄탄하게 보완해 준 프로젝트입니다.

이 프로젝트는 학교의 출결을 받아서 개발을 했던 프로젝트인데 이 프로젝트에서는 처음 겪는 기술들이 있어서 조금 어색했던 경험이 있었습니다.

 

shadcn과 tailwind css였는데 둘 다 익숙치 않은 기술들임에도 기간은 점점 좁혀오니 써보면서 배웠던 기억이 있습니다.

이 프로젝트에서는 react-hook-form, zod, next.js, react-query에 대한 지식과 경험이 엄청나게 탄탄해졌습니다.

 

나보다 더 잘하시는 선배 개발자분들의 코드 리뷰와 피드백 덕분에 모르는 것도 배워가고 내 기술에 대한 부분들이 더욱 보강되었던 경험이 있습니다.

 

Keep

저는 하고 싶은 것을 곧바로 시도하려고 하는 편입니다. 이게 단점이 될 수 있고, 장점이 될 수 있다고 느끼지만 전 개발을 주 직업으로 삼고 쭉 가려고 합니다. 개발이 지루하지 않고 계속하려면 전 제가 하고 싶은 것을 개발해야 계속 지속할 수 있다고 생각해서 하고 싶은 것을 계속하는 건 좋은 것 같습니다.

 

Problem

기록

이 글을 써가면서 느낀 건데 기록이 되어있지 않으니 정말 불편하고 시간이 낭비가 되는 느낌을 받습니다. 기록을 해놓지 않다 보니 제 경험인데도 불구하고 놓치는 부분도 많고, 기억도 잘 나지 않는 불편함을 겪고 있습니다.

 

꾸준함

전 꾸준함이 없는 것 같습니다. 한순간에 확 뛰고 한순간에 확 가라앉습니다. 개발자로서 보면 굉장히 안 좋은 습관이라고 생각하며 고치려고 노력 중입니다.

 

책임감

세 번째에 소개된 Hello-gsm을 하면서 내 프로젝트에 대한 책임감이 마지막으로 갈수록 상당히 낮아졌던 것 같습니다.

이슈가 터졌고, 그 이슈에 대응하는 속도가 학교 입학지원 시스템임에도 불구하고 상당히 느렸고 QA를 했음에도 불구하고 많은 이슈가 터졌습니다. 수많은 이슈들 중에서도 시간 관련해서 같은 이슈 2번이 나온 게 상당한 책임감에 부재라고 생각합니다.

 

Try

AI

앞으로 AI를 조금 적극적으로 사용해 볼까 생각하고 있습니다.

요즘 코딩 세계에는 AI가 주 요인을 차지한다고 생각해도 부족하지 않다고 보고 있습니다. 이제까지 코딩할 때에는 chat gpt AI만 사용했었는데, claude, cursor 같은 다양한 AI를 사용해보려 합니다.

 

기술적으로 많이 배웠던 경험

많은 성장으로만 따지면 난 GSM-Networking에서 많은 성장을 거둔 것 같습니다.

해당 프로젝트에서 협업 부분에서 상당한 지식과 경험을 얻었고, 중간에 합류하여 모르는 부분을 물어보고, 모든 코드를 이해하기 위해서 노력하며, 기술 부분에서도 모르는 기술들을 직접 써보면서 배우다 보니 엄청난 성장을 이루게 되었습니다.

 

트러블 슈팅

기억에 남는 프로젝트의 트러블 슈팅은 처음으로 겪었던 GSM-GOGO의 베팅 시스템에서 동시에 클릭하면 엄청나게 많은 요청이 가, 결국에 한 경기에 2개 이상의 베팅이 들어가 버리는 문제였습니다.

 

문제는 모달에서 베팅 완료 버튼을 눌렀을 경우에 모달이 닫히는 시간보다 순간 클릭하는 양과 API를 호출하는 양이 더 많아져서 일어난 문제였습니다.

 

빠듯한 시간과 QA의 부재에 일어난 문제였는데, 백엔드와 프론트엔드 둘 다 해당 문제를 인지하지 못했어서 결국 다음날 베팅과 금액이 초기화가 되었던 기억이 있습니다.

 

이 이슈를 해결하기 위해 해당 프로젝트에 debounce라는 개념을 공부해서 적용시켰으며, 중복 호출을 방지하였던 경험이 있습니다.

 

앞으로의 취업준비

주변에서 들려오는 이야기로는 재작년, 작년보다 올해 취업시장이 훨씬 좋지 않다고 합니다.

그래서 그런지 주변 친구들과 저 모두 압박감을 느끼고 있습니다.

아직까지 포폴이 제작이 되어있지 않아서 포폴 제작을 1순위로 두고, 제 개인프로젝트로 제 기술을 갈아 넣은 프로젝트를 만드려고 합니다.

 

현재 계획된 바로는 취업에 집착하지 않고 포폴을 업그레이드시키면서 원서를 넣어볼 생각입니다.

 

가고 싶은 회사

가고 싶은 회사를 딱 정해놓고 하지는 않지만 조건은 맞춰졌으면 좋겠는 회사의 조건이 있습니다.

 

1. 서비스를 꾸준히 운영하고 있는 회사

2. 병역 혜택의 유무

3. 프론트엔드 개발자를 포함한 개발자 인원 5명 이상 되는 회사
4. 좋은 사수 (희망 사항)

 

올해 목표

1. 정보처리산업기사

준비가 부족한 탓인지 실력이 부족한 탓인지 제대로 준비를 하지 못해서 아직까지 정보처리산업기사를 취득하지 못했습니다.

이번 년도에는 꼭 취득을 하려고 합니다.

 

2. 취업

사실 취업만큼 올해 목표로 삼을 것이 없다고 봅니다. 이제 3학년이니만큼 취업에 대한 준비를 탄탄하게 해서 꼭 좋은 회사에 취업하고 싶습니다.

 

느낀 점

작년은 재작년에 비해서 글 실력과 코딩 실력이 전체적으로 많이 는 것 같습니다.

회고는 처음이지만 써보다 보니 제 취업 목표와 제가 뭘 해야 할지 더 뚜렷하게 보이는 계기가 되었던 것 같습니다.