앱 개발에 대한 우리의 시각이 어떻게 디자인 접근 방식을 변화시켰는가
이 글은 Airbnb의 '새로운 디자인 시스템(New Design Language System)' 시리즈에 연재된 글입니다. 다른 글을 읽으려면 여기를 누르세요.
어릴 적 나는 화면에 보여지는 무언가를 만들고 싶었다. 나는 코드를 가지고 놀면서 화면에 도형이나 글을 표현하곤 했다. 그리고 개발자가 되었다. 개발자는 컨셉을 현실로 바꿀 수 있었기 때문이었다.
시간이 흐르면서, 새로운 툴들은 나를 인터랙션 디자인에 집중할 수 있도록 만들어 주었다. 나는 코드가 가장 강력한 디자인 툴이라고 믿지만, Macromedia Director나 Adobe Photoshop 같은 소프트웨어가 우리를 더 빨리 움직일 수 있도록 도와준 것은 사실이다. 그리고 이 툴들은 현 세대 디자이너들이 디지털 경험 설계자가 될 수 있도록 도와주었다. Photoshop과 같은 시각적인 툴은 우리가 소프트웨어를 디자인하는 근본적인 방식을 바꿨다고 해도 과언이 아니다. (내 경력에도 지대한 영향을 미쳤다.)
그런데 문제는, 우리가 지금도 20년 전과 같은 방식으로 일한다는 것이다. 오늘날 툴들은 파편화되어 있어서 서로 잘 연결되지(communicate) 않는다. 그래서 우리는 불필요한 목업들을 계속 만들어 낸다. 우리가 오늘날 일하는 방식은 디자인과 개발의 간극을 더 넓히고 있고, 쓸데없는 중간 과정들은 부담감만 가중시킨다.
우린 이보다 더 나은 방식으로 일할 수 있다.
IT 회사들은 복잡한 소프트웨어를 만들면서 상상 이상의 빠른 속도로 움직여야 한다. 빠르게 성장하던 팀을 이런 상황에 놓으니, 결국 좋지 않은 경험으로 끝나는 경우가 많았다. 이 문제를 통해 어떻게 여러 팀이 효율적으로 협업하여, 훌륭하면서 통일성 있는(cohesive) 소프트웨어를 만들 수 있는지 고민하게 되었다.
다행히 개발자들은 이런 현실에 맞춰 진화해 왔다. 수백 명, 수천 명이 하나의 코드 베이스에 협업할 수 있는 툴과 프로세스를 개발했다. 완벽하진 않았다. 정말 그랬다. 하지만, 오늘날 개발 방식은 5년 전(개인적으론 20년 전)에 비해 근본적으로 더 효율적이고 협업하기 유리한 환경이 되었다.
만드는 방법을 먼저 혁신하지 않고는 제품을 혁신할 수 없다.
안타깝게도 소프트웨어를 디자인하는 방식은 개발이 진화한 속도에 비해 별로 진전이 없었다. 디자이너와 개발자 사이의 간극은 오히려 더 커졌다. 디자인 팀은 종종 창의적인 프로세스와 끊임없는 혁신의 사이클 사이에서 균형을 잡는데 어려움을 겪는다. 질이 떨어지면 제품의 경험은 통일성이 없어지고 (less cohesive), 재능 있는 사람들은 다른 팀과의 커뮤니케이션을 관리하는데 시간을 허비한다.
당신이 기억해야 할 것이 있다. 당신은 만드는 방법을 먼저 혁신하지 않고는 제품을 혁신할 수 없다. 산업 디자인과 건축 디자인은 그 전제 위해 수십 년간 발전해 왔다. Airbnb에서는 제품을 만드는 더 나은 방식을 찾기 위해 노력한다. 우리는 내부 툴 개발에 투자하고, 비슷한 문제를 풀고자 하는 다른 이들과 협업하고, 프로젝트를 오픈소스화하고, 커뮤니티와의 정보 공유를 통해서 이 목표를 이룰 수 있다고 믿는다.
제품을 만드는 더 나은 방식을 찾겠다는 목표는 우리가 여태까지 일했던 방식을 다시 생각하게 만들었다. 오늘 우리는 Airbnb 역사상 가장 대규모의 업데이트를 진행했다. 이는 호스트, 집, 그리고 인근의 장소를 찾을 수 있는 완전히 새로운, 모바일에 최적화된 방식이다.
이번 업데이트를 하면서 일했던 방식을 통해 새로운 디자인 시스템인 DLS(Design Language System)를 만들었다. DLS와 함께 내부에서 개발한 툴들과 써드파티 툴들은 우리 디자인팀을 단순히 더 효율적으로 일하게 했을 뿐만 아니라, 더 가깝게 일할 수 있도록 만들었다. DLS는 공통의 디자인 원칙과 패턴들을 기반으로 하여 정의된 디자인 컴포넌트들의 집합이다. 이 시스템은 디자인, 개발, 그리고 다른 부서들 간에 공통된 언어를 사용할 수 있게 함으로써, 빠른 제품 개발(rapid iteration)을 가능하게 했다. DLS는 명료하고(simple), 일관성 있으며(coherent), 팀 간 커뮤니케이션을 도와주도록 설계되었다.
The Timeless Way of Building(영원한 건축, 안그라픽스)를 집필한 Christopher Alexander는 그의 책에서 이렇게 말한다. "언어(language)가 공유되면, 그 언어의 개별 패턴은 더 온전해진다(profound)." 이 일이 가능하기 위해선, 이 패턴들이 근본적으로 명료(simple) 해야 한다. "명료하거나 직접적(direct)이지 않은 것은 사람 사이에 널리 퍼질 수 없다."
어떤 (디자인) 시스템이든 가장 큰 위협은 무관심이다. 다양한 팀의 니즈와 특성을 반영한 통일성 있는 시스템을 사용하고 유지하는 것은 매우 어려운 일이다. 우리는 새로운 앱을 출시하기 위해 서로 더 잘 연결되는 일련의 툴들을 사용했다. 마치 잘 짜인 워크샵 같이, 툴들은 서로 상호보완적이어야 한다. 이는 창의성과 작업물(craft) 사이의 간극을 줄인다.
최근 만들어진 디자인 툴 저작 팀은 DLS의 원리에 근거하여 새로운 디자인 환경(소프트웨어)을 만들도록 임무가 주어졌다. 우리는 이제 Photoshop이나 Sketch 같은 써드파티 툴과 잘 통합된 환경을 구축했다. 그래서 디자이너들은 이 하나의 툴로 모든 컴포넌트와 심지어 실제 데이터에 빠르게 접근할 수 있게 되었다.
우리는 또한 Airshots라 불리는 디자인 컴포넌트를 관리하는 브라우저를 만들었다. 이 툴을 통해 Airbnb의 누구나 수천 개의 화면에 접근할 수 있다. 우리 앱의 어떤 버전의 어떤 화면이든 원하는 언어와 우리가 지원하는 어떤 기기에서든 볼 수 있는 시스템을 상상해 보라!
마지막으로, 우리가 이렇게 코드에 투자하는 이유는 더 좋은 디자인 툴을 만들기 위해서다. 단지 레이아웃이나 디자인뿐만 아니라, 로직이나 데이터 같은 실제 에셋과 더 가깝게 일할 수 있는 환경을 구축하기 위해 노력한다. 이를 통해 디자이너와 개발자 간의 간극을 좁히고, 더 나아가 불필요한 문서, 그리고 비전과 실제 제품 사이의 단계를 줄이기 위해 노력하고 있다.
여러 분야 간 협업 방식에 주안점을 둔, 더 나은 툴과 통합된 시스템을 만듦으로써, 우리는 좀 더 큰 문제를 푸는데 시간을 투자할 수 있게 되었다. 앞으로 몇 달 안에, 우리의 디자인 시스템이 어떻게 정의되었고, 디자인 컴포넌트, 패턴, 그리고 규칙을 만드는데 어떤 결정이 영향을 미쳤는지에 대한 디테일하고 솔직한 케이스 스터디를 공개하기 위해 노력할 것이다.
우리는 더 나은 세상을 만들기 위해 움직이고 있다. 다음 해에는 우리가 소프트웨어를 디자인하고 만드는 방식에 엄청난 도약이 있을 것이다. 우리는 여러 분야 간의 차이가 옅어(blur) 지고, 디자인과 개발이 완전히 공존하며, 협업이 더 이상 고통스러운 것이 아니라 영감을 주는 세상을 만들기 위해 노력할 것이다.
저자인 Alex Shleifer는 Airbnb 디자인의 VP다. Airbnb에서 디자인을 하지 않을 때는 괜찮은 개발자와 평범한 뮤지션이 되기 위해 노력하고 있다.
원문은 여기서 보실 수 있습니다.
Proof reading을 도와주신 허두석님께 감사드립니다.