이 글은 2022.08.07에 작성한 내용을 시리즈의 목적에 맞게 수정하여 재발간하였습니다.
새로운 프로젝트를 시작하면서 가장 중점으로 두었던 것은 지금까지 배우고 싶었던 기술 스택을 공부해서 적용하는 것이었다. 여러 부트캠프를 준비하면서 실무 관점에서의 프론트엔드 엔지니어링은 내가 생각했던 콘텐츠를 구현하는 일과 다르다는 것을 깨달았고, 어떤 학습 방향과 자세를 가져야 하는지를 정리해보려 한다.
내가 생각한 프론트엔드는 디자인을 구현하고 동적 요소를 추가한 웹 서비스의 개발이었지만, <프론트엔드 개발자는 왜 구하기 어렵나요?> 글을 통해 더 나은 사고를 가질 수 있었다. 이 글에서 정리한 실제 업무와 필요 역량에 대해 잘 정리가 되어있으며, 나는 이 글을 프론트엔드 측면 그리고 디자이너, 백엔드 개발자와 상호 작용하는 측면으로 각각 나누어보았다. 요소 구현 뿐만이 아니라 앱 기능 정의, 호환성 고려, 백엔드 접속 안정성 등 아직 잘 이해되지 않는 부분들도 있으나 더 넓은 시각을 가져야 한다는 것을 깨달았다.
프론트엔드 개발에서 사용하는 HTML, CSS, JS는 소프트웨어 메커니즘을 잘알지 못하여도 사용할 수 있으며, 나 또한 그런 방식으로 사용하고 있었던 것 같다. 이 글에서는 막무가내로 멋진 기술들을 도입해 보기에만 좋은 웹을 만드는 것을 지양하고 있다.
이 글에서 다루고 있는 숙련된 프론트엔드 개발자의 역량에서는 아직 생소한 용어들이 많았다. 다만 지금 반짝거리는 프레임워크/라이브러리가 아니라 웹 개발의 표준과 성능 향상을 우선으로 해야한다는 것을 깨달았다. 실제 내가 GraphQL, Next.js를 처음 접할 때에도 기술의 사용 목적을 알려면 더 근본적인 개념을 알고있어야 해서 학습이 어려웠던 적이 많았다.
현재 내가 배운 프론트엔드 개발 테크트리는 아래와 같다.
HTML > CSS > JavaScript > React
프론트엔드 로드맵, 웹 개발 로드맵 영상, 신입 프론트엔드 개발자의 학습 방향 과 코드너리 상위(?) 24 개 기업의 기술 스택 및 채용 공고를 참고하여 나에게 맞는 개발 테크트리를 표로 정리하였다.
이미 사용해보았던 기술들을 보완하는 것이 목적이다.
내가 정말 배우고 싶었던 기술과 웹 개발을 위한 기초 지식들의 학습이다.
이 영역에는 시간과 기초 지식이 부족하여 아직 학습이 어려운 사항들이 대부분 분류되어 있다.
오랜만에 주어진 나만의 온전한 시간인 만큼 공부하고 싶었던 것들을 찬찬히 배워나갈 예정이다.