일단 저도 퍼블리셔와는 딱 한번 같이 일을 해봤습니다. 저도 퍼블리셔라는 직무에 대해 많이 아는 바가 없고
특히 해당 직무는 회사에서 어떻게 R&R을 정의하냐에 따라 천차만별로 업무를 한다고 느껴지기에 정확한 답변이 아닐 수 있음을 알려드립니다.
보통 퍼블리셔의 업무는, 다음과 같습니다.
- js 코드가 없이 정말 순수하게 static 한 페이지의 마크업 및 스타일링
- 능력에 따라서 간단하게 library를 가져와서 사용하거나 하는 정도까지 업무를 도와주십니다.
- https://programmers.co.kr/pages/2023-dev-survey
- https://programmers.co.kr/pages/2023-trend-report
- https://school.programmers.co.kr/learn/courses/17920/17920-5기-k-digital-training-빅데이터-플랫폼-프론트엔드-엔지니어링
- 이런 페이지를 많이 담당해주셨습니다.
- 세 페이지 모두 정적인 페이지이며, 하나의 페이지로 이루어져있습니다.
- 이런 페이지는 따로 프론트앤드 개발자와 협업 없이, 기획/디자이너 ↔ 퍼블리셔 간에 업무를 끝내는 경우가 많습니다.
- js가 들어가거나, react/vue 코드로 개발 되는 웹 서비스의 마크업 및 스타일링
- 이 경우에는, 디자인 시안에 대해서 우선 index.html / *.css 파일로 퍼블리싱을 해주십니다.
- 여러 페이지로 나뉠 시, *.html 파일을 여러개 만들기도 하고요.
- 조금 더 나아가면 최대한 css를 재사용 가능하게, class 선택자를 사용하면 거의 공통으로 스타일링 적용 될 수 있게 고민해주시기도 합니다.
- 이 정도 까지 되면, 프론트 앤드 개발자는 그 코드를 보고, react or vue로 변환하면서 컴포넌트를 만들게 되고, 그 때 필요시 마크업/css를 잘 활용합니다.
- 그런데 여기에서 이슈는, react/vue의 경우 컴포넌트 단위로 개발을 많이 하는데, 저희가 생각하는 logically 분리되어야하는 컴포넌트가 있는 반면, 퍼블리셔분 께서 디자인 적으로 분리되어야하는 컴포넌트가 달라서, 쉽게 가져다 쓸 수 없는 경우가 존재합니다.
- 예를들어, baseButton을 만들고 그것을 extends해서 재활용하고 싶은데, 이미 퍼블리싱 된 버튼에는 다양한 스타일링과 마크업이 되어있으면 그것을 다시 제거하고 확장성있게 만들어야하죠.
- 여기에서 기존의 마크업/퍼블리싱을 가져다 쓸지, 그냥 FE 개발자 본인이 퍼블리싱 코드와 무관하게 만들지는 본인의 판단이 되겠고요.
- 이런식으로 컴포넌트 단위 개발을 많이 하게 되면서 퍼블리싱 코드의 사용성이 살짝 떨어지는 것 같기도 하다고 “개인적”으로 생각합니다. 그래서 저희 회사의 경우 react 스터디를 통해 퍼블리셔 분도 간단하게 react 개발을 하실 수 있을 때 까지 시간을 드리기도 했었습니다.
- 또한, 추가적인 문제는 요즘은 css-in-js를 사용하기도 하고, tailwind css를 사용하기도 해서 퍼블리셔분께서 작성해주신 마크업파일이 무용지물 되는 경우도 종종 존재합니다.
- 그래서 지금 저희 회사는 FE개발자가 모든 스타일링을 다 하고 있는 상태입니다.( 저희는 library 선택에 자유도를 주어서, 팀마다 스타일링 기법이 상이하거든요 )