brunch

You can make anything
by writing

C.S.Lewis

by 이동관 Dec 08. 2024

UX디자이너에게 어느 만큼의 기술적 이해가 필요할까

처음 교육과정을 수강했을 때 '기술적 이해를 갖춘 디자이너', '구현 가능한 디자인을 하는 디자이너'라는 말을 듣고 얘기할 때 생각했던 디자이너의 모습은 코드를 직접 읽고 쓸 줄 아는 디자이너였습니다. 디자인시스템 리디자인을 위해 부트스트랩을 참고하며 코드 구조에 대해 봤을 때도 이것을 다 이해할 줄 알고, 어떤 구성으로 각 컴포넌트가 구성되는지를 명확히 알고 있는 게 중요할 것이라 짐작했습니다.


그런 생각을 갖고 html, css, js 그리고 react를 배운지 3일째 되던 날, Todo List 프로젝트를 시작하면서 다시금 디자이너의 기술 이해에 대해 생각해보니, 여기서의 기술 이해는 '코드를 쓸 줄 아는 디자이너'를 의미하는 게 아닌 '시스템을 이해하는 디자이너'를 의미하는 것이었습니다. 이러한 깨달음은 데이터 흐름과 정보 구조를 파악하는 과정에서 더욱 선명해졌는데 각각의 UI 컴포넌트가 어떤 식으로 관계를 맺고 API, DB와 어떻게 연결되는지를 이해하면서 단순히 '예쁜 컴포넌트를 만드는 것'이 아니라 '시스템 전체에서 작동하는 컴포넌트를 설계하는 것'이 중요하다는 사실 또한 깨달을 수 있었습니다.


예를 들어, Todo List에서 새로운 항목을 추가하는 컴포넌트를 설계할 때는 다음과 같은 고민을 했습니다. 

이 컴포넌트가 생성되었을 때 다른 컴포넌트의 상태에 어떤 영향을 미칠까?

어떤 API가 호출되고, 로컬 스토리지는 어떻게 변경될까?

최종적으로 데이터베이스 처리에는 어떤 영향을 미칠까?

Todo-List에 대한 이해도를 높이기 위해 만든 플로우 차트


이러한 시스템적 사고는 자연스럽게 '사용자'에 대한 새로운 정의로 이어지게 되었습니다. 기존에는 '사용자'라고 하면 단순히 서비스의 최종 사용자만을 생각했습니다. 하지만 시스템 전체를 이해하기 시작하면서, '사용자'는 해당 서비스의 모든 이해관계자를 포함하는 개념으로 확장되었습니다. 예를 들어 B2B SaaS 환경에서는 결제 담당자, 시스템 관리자, 최종 사용자 등 다양한 계층의 사용자가 존재하며, 각각의 니즈와 데이터 접근 권한이 다르다는 것을 이해하게 된 것이죠.


물론 코드 작성과 배포 환경에 대한 이해가 있으면 좋을 것입니다. 하지만 누군가 이것이 UX 디자이너의 핵심 역량이냐고 물으면 저는 고개를 저을 것입니다. UX 디자인의 핵심은 '사용자의 경험을 개선하기 위한' 디자인을 하는 것이지, 사용자의 경험을 개선하기 위한 '디자인을 하는 것' 자체가 아니기 때문입니다.


이러한 깨달음은 앞으로의 UX 디자이너로서의 성장 방향을 명확히 해주었는데요, 지금 진행 중인 교육과정의 팀 프로젝트에서도 단순히 표면적인 디자인 개선이 아닌 다음과 같은 질문들을 던지며 접근하고 있습니다.

이 기능이 전체 시스템에서 어떤 역할을 하는가?

다양한 이해관계자들의 니즈를 모두 충족시키는가?

데이터 흐름상의 병목지점은 없는가?

시스템 확장성을 고려한 설계인가?


결국 UX 디자이너에게 필요한 기술적 이해란, 코드를 작성하는 능력이 아닌 시스템을 이해하는 능력입니다. 이는 더 나은 사용자 경험을 설계하기 위한 토대가 되며, 특히 정보구조가 복잡한 시스템에서는 더욱 중요해질 것입니다. 앞으로도 이러한 관점을 기반으로 시스템을 이해하고 다양한 사용자층을 고려하는 UX 디자이너로 성장해나가고자 합니다. 


여러분은 UX디자이너에게 필요한 기술적 이해에 대해 어떻게 생각하시나요? UX 디자인을 배우거나 실무에서 느낀 경험이 있다면 공유해 주시면 좋겠습니다 �

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari