Home
All Posts
🤵🏻‍♂️

‘새로운 기술에 관심이 많은 분’ 되는 방법

Created
2024/05/21
Category
Essay
3 more properties
최근 한 라이브러리의 버전 업데이트 요약 글을 썼는데 이 글을 많이 좋아해 주시더라고요. 또한 이런 글을 쓰고 싶은 분들도 있었고요. 저도 시행착오가 많았는데, 이 포스팅을 통해 글을 썼던 흐름과 방법을 공유합니다. 새로운 기술과 트렌드에 관심을 가지고 싶은데 어떻게 해야 할지 막막하셨던 분들께 도움이 되기를 바랍니다.

고민의 시작

출처: 넥슨 채용 홈페이지

새로운 기술과 트렌드에 관심이 많은 분

프론트엔드 개발자 채용 공고에서 종종 볼 수 있는 문구다. 주로 지원 자격이나 우대사항에 적혀 있다. 물론 모든 직군에서 지적 호기심과 열정을 가지고 일하면 좋겠지만, 특히 프론트엔드 개발자에게 더 많이 요구되는 이유는 무엇일까?

앞다투어 빠르게 변화하는 프론트엔드 기술

지난 10여 년간 웹 개발 분야에서 기술의 발전이 빠르게 이루어지고 있다. 영원할 줄 알았던 jquery의 인기가 식고, 한동안 높은 인기를 누리던 Angular는 점점 외면받고 있다. 그리고 그 자리를 React와 Vue가 대신하고 있다.
물론 프론트 백엔드 불문하고 개발자 커뮤니티에서 외면받는 기술을 선택할 경우, 프로젝트가 기술적 부채와 유지보수의 어려움이 생길 수 있다. 따라서 현재와 미래의 트렌드를 예측하고, 프로젝트가 장기간에 걸쳐 지속 가능하도록 하는 것이 중요하다.
특히 프론트엔드는 사용자의 다양한 인터렉션에 대응해야 하기에 사용자의 요구에 발맞춰, 아니 더 앞서가야 할 것이다. 이렇듯 기술의 교체 주기가 빠른 만큼 프론트엔드 개발자로서 ‘올해의 기술 전망’이나 프레임워크와 라이브러리의 버전 업데이트에 촉각을 곤두세울 수 밖에 없다.

기술 따라가기

뭐부터 해야하지

그래서 새로운 기술과 트렌드에 관심이 많으려면 무엇부터 해보면 좋을까? 이 고민을 꽤나 오래 전부터 해왔는데 선뜻 무언가를 해보기 어려웠던 이유는 크게 세 가지로 꼽을 수 있겠다.
1. ‘새로운 기술과 트렌드’ 라는 말이 추상적으로 느껴져 무엇을 해야 할지 막막함 2. 뭔가 거대하고 어려워 보이는 오픈소스 코드 분석에 대한 막연한 두려움 3. 기술 면접 준비, 코딩 테스트 등 흔히들 하는 취업 준비로 인해 우선순위 밀림

의외의 계기

이렇게 망설이기를 몇 달, 그러다 시작은 의외의 계기였다. 신청했던 강연이 취소된 것이다.
강연 주최 측에서 받은 취소 안내 문자
평소 관심있었던 위지윅 라이브러리 Quill이 2.0으로 버전 업그레이드가 되면서 주요 개선 사항을 소개하고, Quill을 더 잘 쓸 수 있는 방법을 설명하는 강의였다.
이전 프로젝트에서 CRUD를 구현할 때 웹 에디터로 Quill을 선택했기에 관심이 많을 수 밖에 없었다. 프로젝트가 끝난 이후에도 github repository에 star을 눌러두고 계속 지켜보기도 했다. 사용하면서 부딪혔던 각종 이슈들과 에러들도 많았을 뿐더러, 특정 버튼을 커스텀을 해보았는데 스스로 이게 잘 한 것인지, 괜찮은 코드인지, 혹은 더 좋은 방법은 없는지 궁금했다. 그래서 강연하시는 분께 이것저것 여쭤보면서 이번 기회로 Quill을 더 잘 알아가고자 했다.
그런데 강연이 취소되었다. 매우 아쉬웠지만.. 한편으로는 이런 생각이 들었다.
그럼 내가 직접 해보면 되잖아?

기술 하나를 파보기

관심있는 기술부터 파보기

이렇듯 내가 관심있는 기술부터 눈여겨 보자.
관심있는 기술이 없다면 지금까지 프로젝트들에서 썼던 기술 스택들의 변화를 지켜보자. 레포지토리 star을 눌러둔다든가, 혹은 북마크로 찍어두고 간헐적으로 들어가보는 것도 좋을 것 같다. 물론 React나 Next 등 유명한 프레임워크와 라이브러리는 개발자 커뮤니티 등에서 바이럴되니 관심을 가질 수 밖에 없다.

릴리즈노트부터 이슈까지

코드부터 무작정 파려고 하면 어려울 수 있다. 그럴 땐 릴리즈 노트를 보자. 어떤 변화가 있는지 잘 정리되어 있으니 더 보기 편할 것이다.
아래와 같이 레포지토리 우측 하단의 최근 버전을 눌러보자.
예시: Quill의 레포지토리
그럼 아래와 같이 각 버전 업데이트 시 어떤 것들이 변화되었는지 잘 정리가 되어 있을 것이다. 이제 이 흐름을 따라가면 된다.
아래와 같이 주요한 개선 사항들을 쭉 읽어보면 이번 버전에 어떤 부분이 개선되었는지 알 수 있다. 더불어, 그 개선을 진행한 관련 PR 링크가 함께 있다.
예시: Quill의 릴리즈 노트
이 PR을 보면 해당 개발자가 어떤 문제를 개선했는지는 PR 메시지에 담은 Issue 넘버들을 보면 될 것이다. 그리고 구체적으로 어떻게 개선했는지는 코드로 보면 된다.
예시: Quill의 PR 중 하나
각 PR에 달린 Issue를 타고 들어가면 아래와 같이 어떤 문제가 있었는지 자세히 볼 수 있다. 문제와 대응해서 해결 과정을 보면 더 이해가 쉬울 것이다.
예시: Quill의 Issue 중 하나
뿐만 아니라, 구글이나 스택오버플로우에 관련 이슈들도 검색해 보아도 좋다.
예시: Quill 관련 스택오버플로우 질문

나의 사용 경험

마지막으로, 본인의 경험이 함께 있으면 더욱 더 좋을 것 같다. 아래는 예시다.
1.0 버전에서는 A와 같이 코드를 작성했는데, 2.0 버전에서는 개선된 기능을 활용해 B와 같이 코드를 작성했다. 전체적으로 코드가 짧아지고 성능이 개선되었다.
물론 업데이트 된 사항들을 알기만 해도 되지만, 그걸 직접 써보면 더욱 효과가 체감될 수 있지 않을까?

느낀 점

오픈소스 기여에 한발짝

언젠가 꼭 오픈소스 기여를 하고 싶다는 생각이 있었다. 아직까지는 방대한 코드 분석이 어렵게 느껴져, 문서 기여 정도만 고려하고 있었다. 이번에 버전 업데이트를 분석하며 업데이트 전후로 코드들이 어떻게 변화했는지 읽기도 하다보니, 오픈소스 기여가 그렇게 어렵지만은 않을 수 있겠다는 생각이다. 그래도 한 발짝 다가간 느낌?
관심있는 라이브러리를 잘 쓰면서도, 변화를 지켜보고, 오픈소스 기여도 해볼만 하겠다는 생각이다.

업데이트는 곧 신뢰

라이브러리나 프레임워크의 기능 개선과 업데이트가 자주 이루어지면 이루어질수록 신뢰도도 올라가는 것 같다. 간혹 특정 기술 스택의 업데이트가 장기간 없으면 지속가능성에 관해 고민하게 되는 건 사실이다.
나 또한 최근 라이브러리를 만들어 배포한 경험이 있었다. 배포 이후로 크리티컬한 이슈 몇 개만 수정하며 Patch 업데이트만 했었는데, 앞으로는 업데이트를 자주 해야겠다는 생각이다.

추상적인 문장을 내 방식대로 경험하기

물론 지금까지 공유한 경험이 “새로운 기술과 트렌드에 관심이 많은 분”에 적합하지 않을 수도 있다. 회사마다, 팀마다 원하는 인재상이 다른 건 자명하니까. 예를 들어 누군가는 오픈소스 기여를 할 수도 있고, 또 누군가는 커뮤니티 활동을 하며 새로운 기술과 트렌드에 촉각을 곤두세울 수 있다. 혹은 기존 프로젝트에 새로운 기술을 도입해 보는 경험을 할 수도 있겠다.
이렇듯 채용공고에 써있는 추상적인 문장을 자신만의 방식대로 경험해 본다면 나만의 성장 경험으로 축적이 되리라 생각한다.

참고 자료