썸네일 이미지는 AI를 활용했지만, 글은 모두 직접 작성했습니다.
6년차 UX/UI 디자이너이자 5년차 웹 퍼블리셔로 일해왔다. 사용성이 뛰어난 UX를 고민하고, 예쁜 UI를 구현하는 것에 관심이 많다.
첫 번째 회사에서는 디자인 에이전시의 UX 디자인팀에서 디자이너로 근무했다. 퇴사 후 아일랜드 어학연수를 다녀왔고, 그 후 웹 퍼블리싱을 배웠다. 그렇게 들어간 두 번째 회사는 개발 회사였다. SI팀에 소속되어 팀의 1인 디자이너 겸 퍼블리셔로 근무하게 되었다.
개발 회사에서 일을 하면서 개발 기술과 개발 문화, 개발적 사고를 접하는 순간이 많아졌다. 수많은 프로젝트를 경험하며 다양한 개발 환경에서 작업을 진행했고, 어려운 퍼블리싱 이슈를 해결하기 위해 개발 지식도 함께 쌓아야 했다. UI가 의도대로 동작하려면 상태, 컴포넌트 구조, 데이터 흐름까지 연결해서 이해해야 하는 순간이 반복되었고, 그때부터 개발 자체에 관심이 생겼다.
웹 퍼블리싱과 프론트엔드 개발의 역할을 간단히 정리하면 아래와 같다.
웹 퍼블리셔로 업무를 하면서 느낀 건, 내 포지션이 참 애매하다는 것이었다.

함께 일하는 사람의 기대치와 개인의 역량, 그리고 프로젝트 상황에 따라 업무 범위가 매번 달라졌다. 화면 구현과 간단한 이벤트까지만 구현해서 넘겨주는 경우도 있었고, 데이터 바인딩과 이벤트 동작까지 구현하는 경우도 있었다.
나는 단순히 디자인을 화면에 옮기기만 하는 것보다, 범위가 넓은 프로젝트를 진행하는 쪽이 더 즐거웠다. 어렵기는 했지만 새로운 도전을 하면서 성장하고 있다는 게 느껴졌고, 점점 더 능력을 키우고 싶어졌다.
처음에는 HTML, CSS로 퍼블리싱을 시작했다. 어려운 JavaScript 코드는 매일 보다보니 어느 정도는 눈에 익게 되었다. Tailwind CSS, Material UI, npm, Git, SCSS/Sass, JSP, Vue.js, React 등 요구되는 기술과 환경에 대해 빠르게 학습하며 업무에 적용해볼 수 있었다. 할 수 있는 것이 늘었고, 더 많은 걸 해보고 싶어졌다. 재사용성이 높은 컴포넌트 분리와 좋은 코드는 무엇일까에 대한 관심이 많아졌다.
퍼블리싱 업무 자체는 점점 더 능숙해졌고, 작업 속도와 새로운 기술 습득 속도도 함께 올라갔다. 반복 작업을 줄이기 위해 AI 도구의 도움을 받으면서 효율도 올라갔다.
하지만 다음 스텝을 고민하기 시작하면서 현실적인 질문이 생겨났다. 퍼블리셔라는 직무는 조직마다 역할 정의가 달랐고, 지인의 경험담과 채용 공고를 보면 퍼블리셔의 업무가 프론트엔드 역할로 함께 묶이는 경우가 많아 보였다. 내가 원하는 성장 방향을 기준으로 보면, 퍼블리셔 역할만으로는 한계가 있다고 판단했다.
문제를 발견하여 해결하고, 요구사항을 화면으로 구현하고, 더 좋은 컴포넌트 구조와 코드를 작성하기 위해 알아가는 과정이 재미있었다. 퍼블리셔와 프론트엔드 개발자 사이에서 꽤 오랫동안 다음 스텝을 고민했고, 결국 개발의 세계로 발을 내딛기로 결정했다.
‘내가 디자인과 퍼블리싱을 해왔기 때문에 자연스럽게 프론트엔드로 기울어지는 것 아닐까? 백엔드가 적성에 더 맞을 수도 있지 않을까?’라는 생각도 해보았다. 지금까지의 경력을 포기하고 새롭게 시작하는 만큼, 방향성을 빠르게 잘 잡고 싶었다. 그래서 C 공부도 시작해보았다.
CS가 중요하고, 프론트엔드 개발자에게 필요한 필수 지식인 것은 맞지만, C를 공부하며 분명하게 알게 된 것이 있다. 내가 가장 재미를 느끼는 포인트는 사용자가 직접 사용하는 UI를 만드는 일이라는 것이다. 디자인을 할 때도 사람들이 내 디자인을 직접 경험하는 것이 가장 큰 보람을 느끼는 순간이었고, 개발에서도 그렇게 사용자를 마주하고 싶었다.
사용자가 직접 보고 조작하고 사용하는 웹, 앱 서비스 화면을 만드는 일이 내 성향에 맞았다. 개발을 왜 하기로 결심했는지 이유를 다시 생각해보니 프론트엔드로의 전향이 더 명확해졌다.
개발의 세계는 방대하다. 공부해야 하는 것도 많다. Git, JavaScript, React, Node.js만 해도 끝이 없다. CS, 네트워크, 알고리즘도 공부해야 하고, 이해한 것을 말로 설명할 수 있어야 하고, 기록도 꾸준히 남겨야 한다. 디자인 시스템 관련한 공부도 해보고 싶고, 생각만 해왔던 여러 아이디어를 실제로 빠르게 구현해보고 싶기도 하다. 회사까지 다니면서 병행하려니 24시간이 부족하다고 느낀다. 그래서 허투로 쓰는 시간이 아까워 인스타그램을 지우고 유튜브 시청도 줄였다.
그래도, 잘할 수 있을 것이라 생각한다.
퍼블리싱을 하며 쌓아온 UI 구현 능력과 접근성에 대한 이해, 그리고 1px 단위까지 신경쓰는 디테일한 성향은 프론트엔드에서 UI를 만들 때 강점이 될 것이다.
디자인을 하며 버튼 하나, 레이아웃 하나를 설계할 때도 더 좋은 UX와 사용성을 고민해온 경험은 코드 한 줄, 컴포넌트 하나를 설계할 때도 이유 있는 구조를 만들게 할 것이다.
이 두 가지 능력을 기반으로 프론트엔드 개발자로서의 기본기를 쌓아가려고 한다.
개발자 전향을 준비한다고 했을 때 주변에서 좋은 조언을 많이 들었다. 그중 친한 지인이 학습에 대해 해준 조언이 기억에 남는다.
스스로를 깊게 인지하고, 목표와 우선순위를 정해라
현재 내가 어떤 상태인지, 강점과 약점은 무엇인지, 목표와 우선순위가 무엇인지 객관적으로 인지해야 한다.
그래야 주변의 바람에도 흔들리지 않고 나만의 길을 꾸준히 걸어나갈 수 있다.
시간을 쓰기만 하는 것은 학습이 아니다
오늘 어떤 목표를 위해서 무엇을 할지 계획하고,
내가 수행한 것에서 무엇을 이해하고 느꼈는지 인지할 수 있어야 진짜 학습이다.
내가 이해한 것을 나만의 언어로 남에게 설명할 수 있을 정도가 되어야 한다.
인생을 긴 호흡으로 바라보고, 큰 꿈을 갖되 하루하루 충실하자.
기초가 탄탄해야 그 위에 더 많은 것들을 쌓을 수 있다고 생각한다.
오래 걸리더라도 차근차근, 꾸준하게, 롱런하는 개발자가 되고 싶다.

앞으로 꾸준히 공부하며 기록해나가겠다. 아자아자 화이팅!