프론트엔드 개발자로서 고민해봐야할 문제.

Eden·2023년 2월 23일
0

TIL

목록 보기
22/41
post-custom-banner

User Experience

1990년대 팀 버너스리에 의해 처음 생긴 웹은 세월이 지나 발전된 형태의 웹으로 변화하고 있다. 정보를 정적으로 보여주던 옛날의 웹과는 달리 요즘의 웹은 다양한 액션을 통해 정보를 보여주어 웹의 복잡성이 늘어났다. 하지만 복잡성이 늘어난 웹은 사용자가 느끼기엔 다소 복잡하고 불편할 수 있다는 단점이 생기게 되었다.

사용자가 서비스를 이용하며 지속되는 불편함을 느끼고 불편함이 누적된다면 해당 서비스를 이탈 할 확률이 올라가게 된다. 예를 들어 동일한 주제의 서비스지만 사용하기 불편한 사이트와 사용하기 편한 사이트가 있다면 사용자들은 어떤 사이트를 이용할까 물어보지 않아도 백이면 백 사용하기 편한 사이트를 선택할 것이다. 위와 같이 사용자에게 편안한 경험을 주기 위해 고려해야 할 것이 바로 UX(User Experience)다.

UX는 뜻 그대로 사용자 경험을 말한다. 사용자는 정보를 빠르고 편하게 보고 싶어한다. 우리는 그런 사용자의 니즈를 파악해 행동을 예측하고 설계하여 사용자가 느낄 수 있는 최대한의 좋은 경험을 주기 위해 노력 해야 한다. 내가 생각하는 UX를 간단히 한 줄로 정리하자면 사용자가 원하는 것을 미리 파악하고 대응하여 사용자가 원하는 서비스를 만드는 일이다.

프론트엔드 개발자의 UX

UX를 디자이너의 영역이라고 생각하는 사람들이 있는데 아마 UX 디자이너라는 직군의 이름 때문에 오해하고 있는게 아닐까 싶다. UX는 서비스를 만드는 모든 직군에게 통용되는 개념이라 생각한다. 기획자는 사용자의 행동을 예상하고 좋은 방향으로 이끌어갈 수 있도록 설계하고 디자이너는 사용자가 서비스를 눈으로 볼 때 불편함이 없을 디자인을 구성하듯이 개발자도 개발자만의 몫이 있다.

프론트엔드 개발자는 누구보다 사용자와 가까이에 있는 개발자다. 그렇기 때문에 더더욱 사용자 관점으로 생각하며 사용자의 니즈를 파악해야 한다고 생각한다. 사용자를 생각해야한다는게 낯설 수 있지만 의외로 UX는 우리가 알게 모르게 고려하며 개발하고 있다. 개발자의 UX는 어떠한 것들이 있는지 알아보자

우리는 알게 모르게 사용자를 위한 개발을 하고 있다.

UX는 기획과 디자인 단계에서 많이 진행되지만 완성하기 위해선 개발이 필요한 경우도 적지 않다. 당연한 소리이지만 개발자는 이런한 요구를 개발할 줄 알아야 한다. 어떠한 것들이 있는지 몇가지 예시를 통해 알아보자.

간단하게는 input 태그에 잘못 된 입력을 하면 뜨는 안내문이 있다. 만약 안내문이 없다면 어떨까? 사용자는 무엇이 잘못 된 것인지 인지하지 못한채 로그인과 스무고개를 진행해야 할 것이다. 아주 사소해 보이는 부분이지만 사용자에겐 유무의 차이가 엄청나게 체감될 것이다.

다음은 스켈레톤 로딩이다 스켈레톤 로딩은 기존의 로딩 스피너와는 다른 로딩 방식이다. 로딩 중에 컨텐츠의 뼈대를 미리 보여줌으로서 해당 영역에 무언가가 나올 것이라는 걸 사용자에게 알려준다. 이 과정에서 사용자는 컨텐츠가 나온다는 것을 인지하게 되고 조금이라도 더 기다리게 된다. 더 나아가 인피니티 스크롤에 적용한다면 다음 데이터가 나올때 까지 스크롤이 멈춰있지 않고 뼈대를 미리 보여줌으로서 미리 스크롤을 움직일 수 있게 된다.

이외에도 우리 주변에는 정말 다양하게 UX가 녹아있다. 사소해 보이는 것들도 더러 보이지만 이런 사소한 디테일이 좋은 UX인지 아닌지 결정한다고 생각한다.

사용자는 급하고 사이트는 빨라야한다.

복잡해진 요즘의 웹은 다양한 기능과 잦은 서버 통신으로 인해 크고 무거워져 로딩 시간이 길어질 수 있다. 마음이 급한 사용자들은 우리의 생각처럼 자비롭지 않기 때문에 긴 로딩 시간을 기다려주지 않는다. 이는 수익과도 연관되는 아주 큰 문제다. 이를 해결하기 위해 우리 개발자들은 최적화를 하는 것이다.

실제로 웹의 느린 성능을 끌어올려 매출을 올린 사례도 적지 않다. 우리가 익히 알고 있는 Pinterest는 서비스 이용 고객 중 단 1%만이 가입을 진행했을만큼 굉장히 느린 속도로 사용자들을 답답하게 했다. 해당 문제의 심각성을 깨닫고 문제를 해결해 5분 이상 이용하는 사용자가 40%가 늘었고 이로 인한 광고 수익은 44%가 늘어나는 엄청난 결과를 이뤄냈다.

우리는 여기서 사용자가 느끼는 기다림이란 경험의 가치를 느낄 수 있다. 성능 개선은 디자이너, 기획자도 할 수 없는 오롯이 개발자만의 몫이며 위의 예시처럼 큰 결과로 나타날 수 있는 아주 중요한 경험이라 생각한다.

UX는 소통이 중요하다.

UX에 대해 정리하다보니 역시 가장 중요한건 소통이 아닐까싶다. 앞서 말했듯이 UX는 서비스를 만드는 모든 직군에게 해당되는 개념이라고 생각한다. 좋은 UX를 위해서 개발자만 잘해봤자 큰 효과를 낼 순 없다. 좋은 UX는 기획부터 디자인, 개발 모든 직군이 노력하고 고생하며 만들어내는 결과물이기 때문이다. 때문에 좋은 UX를 위해선 다른 직군과의 소통이 중요해질 수 밖에 없다.

참고
프론트엔드 개발자와 UX

profile
Just living the daydream, one moment at a time.
post-custom-banner

0개의 댓글