우리는 View 개발을 합니다.
지난주에 글또 행사에서 발표를 했다. 너무 거창하게 시작해버려서 수습하느라 애쓴 소감과 후기를 정리해본다. 발표 내용은 추후에 정리해서 블로그에 올려보려고 한다.
이번 반상회는 Android + iOS + 프론트엔드 개발자들이 모이는 행사였다. 글또 내부에선 ‘클라이언트 개발’라는 표현을 쓰는데 이 클라이언트 개발자들에게 공통적으로 할 수 있는 발표 주제를 고민하다가 ‘View’ 자체에 대해서 발표해보기로 했다. 클라이언트 개발자들이라면 공감할 수 있고, 특정 플랫폼에 치우치지 않는 발표를 해보고 싶었다.
View가 뭐길래
이 ‘View’에 관한 아이디어는 최근 모바일 개발자 컨퍼런스에서 생겼다. 컨퍼런스에서 문득 ‘View 개발은 무엇일까?’ 하는 생각이 들었던 것이 계기였다.
개발 컨퍼런스에서 아키텍처는 언제나 인기 많은 주제다. 소중한 비즈니스 로직을 지켜내기 위해 View와의 의존성을 끊어내고 꽁꽁 숨겨두고 Unit 테스트코드도 짜둔다. 그러나 정작 실무에서는 별로 중요해 보이지도 않는 UI 이슈로 하루종일 끙끙대는 일이 비일비재하다. 이런 생각 끝에 과연 ‘우리는 아키텍처로 월급을 받는걸까? 아니면 View 개발로 월급을 받는걸까?’하는 고민까지 이르렀다.
View는 이른바 ‘GUI’, 즉 사용자와 어플리케이션을 이어주는 그래픽 인터페이스이다. 즉 유저가 있는 ‘클라이언트 어플리케이션’을 개발하는 사람이라면 UI를 반드시 개발해야한다. 바꿔말하면 딱히 아키텍처랄게 없는 클라이언트 어플리케이션은 존재할 수 있지만, UI 없는 클라이언트 어플리케이션은 존재할 수 없다. 아키텍처가 중요하지 않다는 이야기는 아니지만, 현실적인 레벨에서 UI로직은 아키텍처만큼 중요하면 중요했지 절대로 덜 중요하다고 말할 순 없다는 결론에 이르렀다. 우리는 결국 ‘View 개발’로 돈을 벌고 있는 셈이다.
그래서 View의 중요성과 더 나은 View가 무엇인지에 대해 여러가지 고민들을 풀어놨고 그걸 발표로 묶어보려고 했다. 문제는 너무 고민들과 소재거리들이 산발해있어서 리허설날까지도 정리가 전혀 되어있지 않았다. 어떻게 자연스럽게 이어나갈지 고민하다가 View가 사용자와 어플리케이션을 이어주는 인터페이스라는 데서 착안해서 아래와 같이 이야기를 나누어 보았다.
- 사용자 관점에서의 View : UX와 사용성에 관한 이야기
- 개발자 관점에서의 View : 더 나은 View 개발을 위한 아키텍처
- 미래의 View 개발 : 다가오는 AI 시대에서의 View 개발
방향을 잡으니 어느정도 이야기의 흐름이 정리되기 시작했고 필요한 이야기와 불필요한 이야기가 구분되기 시작했다. 불필요한 이야기는 과감하게 삭제하고 필요한 이야기에 중심을 두면서 발표내용을 보강해나갔다. 다행히 생각보다 발표에 대해 긍정적인 피드백을 받을 수 있었다. 특히 UX이야기와 미래의 View 이야기가 인상깊었다는 피드백이 많았다.
발표 소감
아쉬웠던 점은 준비가 부족해서 자신감이 떨어져 있었다. 자신감 부족으로 영양가 없는 내용이 될까봐 말이 많아졌는데 최종적으론 오히려 발표 시간초과를 해버렸다. 준비가 잘 되었다면 핵심만 가지고 시간 초과 없이 발표할 수 있었을 것 같아 아쉽다. 말만 많아져서 후반에는 청중들의 집중력도 떨어졌던 것 같다.
후반에 가서 코드가 중간중간 나올 수 밖에 없었는데 너무 제너럴하게 준비하려다 보니 전문성도 떨어지고 이해하기도 어려운 이도저도 아닌 내용이 되어버린 것 같아서 아쉬웠다.
일정 문제로 발표준비가 부족해서 반성을 많이 했다. 긴장도 많이 됐지만 막상 발표를 시작하고 나니 생각보다는 훨씬 잘 풀렸고 다들 즐겁게 들어주셨던 것 같다. 발표 경청해주신 모든 분들께 감사의 인사를 드리고 싶다.