왜 프론트엔드 공부하세요?
나는 네이버 프런트 엔드 개발자입니다 독서 후기
줄거리
Naver의 프론트엔드 개발자분들께서 자신의 경험담, 공부방향 및 성장의 방향을 소개해주는 책
생각정리
“네카라쿠배당토”? 대한민국을 대표하는 IT기업들이자 거의 대부분의 개발자가 꿈꾸는 기업이며
특히 Naver 개발자분들이 풀어주는 경험담이라니, 읽어야 하는 기술서적 책들을 잠깐 미뤄두고 공부 방향의 동기를 얻는데 나름 도움이 되지 않을까 싶어 책을 읽었다.
(그냥 기술서적 읽기 싫어서 읽었다ㅎㅎ..)
사실 요즘 프론트라는 분야에 대한 확신도 크게 없었기 때문이다
왜 나는 프론트를 파고있지..? 돌이켜보면 그냥, 정말 우연히 프로젝트를 진행하면서 프론트엔드 테스크를 할당 받았고 그 분야에서 공부를 하다보니 프론트엔드 개발자로서 방향을 잡고 나아가고 있었다.
때때로 왜 프론트하냐는 질문을 받을때면 어디서 주워 들은 표현을 가져와서 당당하게 이야기하곤 했던거같다.
“화면에 실시간으로 반영되는 부분이 재미있어서요!!”
근데 무언가를 만드는데 성취감을 느끼는거지, 꼭 화면상에 표현되는 부분에 초점을 맞추고 재미를 느끼던건 아니였다. 오히려 백엔드 부분의 작업도 결과물에 대해 성취감을 느낄 때도 있었으니까.
구체적으로는 CSS를 다루면서 퍼블리싱을 하는 것 보다, 내부 로직을 최적화하고 함수를 짜면서 데이터를 다루는게 더 즐겁다고 생각했다. (나 백엔드 체질인가…?) 이런식으로 생각 정리되다보니까 문득 프론트엔드 공부가 하기 싫어졌다.. 아니 조금 무서웠던거같다 바꿀꺼면 진작 바꿔야할텐데 나는 늦은건가? 곧 졸업하는데..!??
더 나아가 최근에는 이런 이야기도 좀 들었다.
-
아는 분이 프론트엔드 n년차 개발자이신데 공부를 하다보면 깊게 파고들게 없다. 백엔드 처럼 깊게 파고드는게 아니니까 다양한 라이브러리나 시각화를 다루어 보면 도움이 될거라는 이야기
-
컴공을 나왔는데 프론트보다는 백엔드를 하는게 좋다. 어처피 프론트는 갓 배운 사람이나, 숙련자나 비슷비슷해서 싼 값의 신입을 더 뽑고만다. 돈도 적게버는건 당연 (국비 프로그램 강사분이 해주셨던 이야기로 기억)
-
프론트엔드 분야는 트렌드가 빠르게 바뀌어서 계속해서 공부해야한다. (근본이 없는걸까??)
-
백엔드에 비해 상대적으로 쉽고 진입장벽이 낮다. 누구나 할 수 있음
그렇게 생각하다보니 문득 마음가짐이 착잡해지고 방향이 많이 흔들렸다. 공부를 하는데 있어 명확한 방향과 동기가 없다면 학습 능률과 성과가 떨어지고 말 그대로 의미없는 행동이 되어버리니까 말이다. 바꾼다면 빠르게 바꿔야했다.
그리고 놀랍게도 책에서도 이런 내용에 대한 이야기가 표현되어있었다.
“화면을 구현해내는 코드의 생명 주기가 아주 짧아 고도화할 필요도, 진지한 고민을 할 필요도 없어 상대적으로 가볍다는 시각이 있다.”
“프런트엔드는 아무나 할 수 있는 노가다”라는 인식이 아직도 팽배하다”
“프로그래밍의 기본을 이해하지 못해도 쉽게 배울 수 있어 진입장벽이 낮았고, 이 때문에 웹퍼블리셔나 인코더라고 하찮게 부르는 사람도 있었다.”
(쓰다보니 안 좋은 이야기만 늘여놓았는데 프론트엔드분야를 깍아내리려고 이런 글을 쓰는게 아닙니다ㅜ)
책에서 이야기를 진행해주신 개발자분들도 연차가 있으셨기때문에 실제 과거인식이 어느정도 위 맥락에 부합한다고 하더라고 과거는 과거일뿐 나는 점차 프론트엔드분야가 고도화되고 체계가 잡혀가고 있다고 생각한다.
최근 3~4년간만 보더라도 프론트의 개발패러다임은 정말 많이 바뀌었다.
jQuery와 JSP, AngularJS가 가장 대두되었던 시점부터 TypeScript자체는 사용하지도 않았다가
React와 Redux가 뜨기 시작하고, Mobx vs Redux -> Angular vs React vs Vue 등등
요즘에는 또 React-query, CSS in JS, NextJS등 새로운 프레임워크가 생기고 이슈도 항상 바뀌어 왔다
이 과정이 놀랍게도 2016년~2023년이라는 단기간에 발생한 일이라는게 지금도 조금 충격적이다.
TypeScript도 열심히 공부중인데 TS를 사용하지 말자는 이야기도 나오고있다는데 어디를 따라가하죠..?
(출처 - 원티드 프리온보딩 - 6월 내용의 테오콘 스피커 발표자료)
만약 누가 내 머리를 때려서 3년 이후에 깨어난다면 내가 공부했던 내용은 과거의 유물처럼 여겨지고 모든걸 처음부터 배워야할 수도 있지 않을까 싶은 생각도 들었다.
근데 그러면 어떤가? 공부는 다시하면된다. 지금 배우고 있는 기술의 문제점이 어떻게는 좋은 방향으로 개선되었다는거니까 오히려 더 흥미롭게 다가올거같기도 하다.
그리고 동시에 이 부분에서 느낀건 그만큼 프론트엔드 분야도 점점 기술과 깊이가 생기고 충분히 전문성 있는 분야 라고 느꼈다. 실제 연차가 많으신 개발자분들은 많이 뽑고있다고 하니까말이다.
단순히 화면상의 표현을 렌더링하고, 라이브러리를 가져다가 하드코딩하고 화면을 구현하는건 ChatGPT만 사용해도 누구나 금방 할 수 있지만 브라우저의 특징이나 내부 요소를 이해하고 코드를 최적화 하거나 내용이 조금 복잡해지기만 해도 단순히 라이브러리 하나로 해결되지 않는 경우도 수두룩 하다.
실제 회사에서 라이브러리 자체 이슈로 라이브러리를 바꾸기도하다가 결국 여러 라이브러리를 혼용하고 커스텀해서 문제를 해결해본 경험도 있다. 즉 깊게 들어가면 들어갈수록 충분히 난이도가 있고 공부할 분야도 무궁무진 하다.
돌아봤을때 새로운 기술을 계속해서 공부해야한다는 부분도 조금 부담스럽게 느껴질 수 있지만 결국 공부라는게 그런거 아닐까?? 백엔드든 프론트든 계속해서 발전하기 나름인데 이전 공부내용이 사용하지 않게 된다고 하더라도 코드를 짜는 기술, 생각하는 능력과 정보를 찾고 이해하는 플로우는 경험으로부터 나올 수 밖에 없다고 생각한다
지금 돌아봐도 맨 처음 jQuery와 JS기반의 웹사이트를 만들고 성과물을 공유했을때 동아리원들이 칭찬해주고 좋아해주었던 과거 기억은 아직도 생생하다.
결과물을 만들었다는 것에서 느껴지는 그 성취감과 즐거움을 알기때문에 무언가를 만들어내는 과정이 즐겁고 그게 우연히 프론트엔드 분야인것도 맞지만 아무렴 어떤가??
책에서는 정말 대단한 개발자분들이 경험담을 말씀해주셨다.
물론 해당 내용은 과거의 일이고, 나와는 다르게 정말 대단한 분들이시지만 결국 책을 통해 느낄 수 있었던 점은 프론트엔드 분야에 대한 막연한 인식으로부터 실제 현업 개발자분들의 생각은 어떤지 간접적으로 느낄 수 있어서 좋았고 이 영향이 앞으로의 진로나 공부방향을 확고히하는데 도움이 되었다는건 틀림이 없다고 생각한다.
특히 에러를 로그화하고 신 기술을 도입하며 성능 지표를 리포트했던 경험담은 되게 인상깊었다. 이 부분은 프론트 기술과 관련없이 서비스 향상을 위해 고민하고 개선시켰던 프론트엔드 개발자의 경험담이기때문에 더더욱 멋있다고 생각했던거 같다. (그래서 이거보고 회사에 Sentry를 적용하자고 마음먹었다 ㅎ)
인상 깊었던 구절
리액트 프레임워크와 내 커리어의 운명을 함께할 각오가 아니라면 자바스크립트 자체에 대한 이해와 숙련은 필수다
프런트엔드 개발자에게 필요한 것은 프런트엔드 개발을 재미있다고 여기는 것이다. 그 외의 것은 아무래도 좋다
수명 걱정은 하지 말자. 전문성이 없다면 프런트엔드가 아닌 그 어떤 분야의 일을 하더라도, 설령 그것이 개발이 아니더라도 수명은 짧을 수 밖에 없는 것이 인생의 진리다
프런트엔드 개발자가 할 수 있는것은 기획에서 정의한 기능을 문제없이 잘 동작 시키는 것 뿐일까? (..중략) 전부는 아니다. 프런트엔드 개발자도 서비스에 영향을 줄 수 있는 부분이 굉장히 많다.
빠른 트렌드의 기술은 아니지만 프런트엔드 영역은 꾸준히 성장할 수 있는 역할을 한다. 모든 SW들이 웹에서 동작되도록 확장되고 있다. 프런트엔드 영역은 매력적이다.
전공 지식은 필수다. 운영체제를 잘 이해하면 브라우저를 잘 이해할 수 있는 것은 물론 성능 병목 현상을 만났을 때도 더욱 효율적인 해결책을 내놓을 수 있다.
댓글남기기