개발 일지/Review

토스 SLASH 23 개발자 컨퍼런스 후기

미숫가루설탕많이 2023. 6. 8. 21:46

 

처음으로 개발자 컨퍼런스 라는 것을 경험해 봤다. 이번 컨퍼런스를 보면서 토스 개발자분들이 구현하는 것을 넘어서 최고의 사용자 경험을 위해서 고민하는 모습이 인상 깊었다. 아직 의욕만 앞서긴 하지만, 나름 프로젝트를 진행하면서 코드를 더 효율적으로 구현하고 실제 사용자가 서비스를 사용한다면 어떨까 라는 생각을 지속적으로 했던 나에게는 모니터에서 빛이 나지 않을 수가 없었다. (열심히 공부하겠읍니다..)

 

세션은 A, B로 나눠서 같은 시간대에 진행됐고 A 세션은 Frontend, DevOps, Core Banking에 관련된 내용들이 구성되어 있었고 B 세션은 Server와 관련된 내용들로 구성되어 있었다. 컨퍼런스는 이틀 동안 진행되고 내일도 마찬가지로 세션 A와 B로 나뉘지만 내용이 iOS, Android, Security 등으로 구성이 조금 다르다.

 

나는 B 세션에 참가했다. 약 2시간 30분 가량 진행되었는데, 보는 내내 2가지 감탄사만 연발했다. '와.. 신기하다', '이게.. 뭐지?'

 

처음부터 AI 얘기가 나오고 Gateway 등등.. 나에게는 어려운 내용들이었다. 채팅창도 같이 보면서 들었는데 많은 분들이 '오.. 이렇게도 하는구나'라는 반응을 보여서 세상에는 잘하고 더 발전하려는 사람들이 많구나 생각했다. 물론 내가 아직 실무 경험이 없기도 하고 공부 깊이가 부족해서 더 어려웠던 것 같다. 하지만 그만큼 많은 인사이트를 얻을 수 있었던 값진 시간이었다.

 

 

 

 

가장 흥미로웠던 세션

 

가장 흥미로웠던 내용은 Server-driven UI로 다이나믹한 서비스 효율화하기 부분이었다. 어떻게 서버와 클라이언트가 정보를 주고받아서 화면을 표시할지를 고민하는 과정을 볼 수 있었다. 홈 화면을 개발한다고 가정하고 설명해 주셨는데 쓸만하다고 판단될 때 멈추지 않고 더 개선해 나아가려는 모습이 정말 인상 깊었다.

 

기존에는 화면을 구성할 때 서버가 클라이언트에게 필요한 데이터를 전달하고, 클라이언트는 그 데이터를 기반으로 화면을 구성하는 방식 (발표자 분께서는 해당 방식을 '데이터 기반 설계'라고 이름 지어주심) 이었다.

 

데이터 기반 설계로 운영했을 때 생기는 고민이 홈 화면에 어떤 버튼 하나를 추가한다던지, 배너 하나를 표시한다던지 이런 부분들이 추가될 때마다 사용자는 앱을 업데이트해야 한다는 것과 클라이언트가 여러 서버로부터 데이터를 받아 취합해서 화면을 표시하고 있기 때문에 디버깅에 어려움이 있다는 점이었다. 이런 고민들은 웹으로 만든다면 앱 업데이트 없이도 바로 배포할 수 있어 앞서 말한 2가지 고민은 해소될 수 있지만 홈 화면인 만큼 네이티브로 최고의 경험을 제공하고 싶다고 하셨고 실제로 구현해내고 계셨다.

 

여기서 나오는 내용이 HomeDST (Home Design Syntax Tree)이다. HomeDST는 간단히 말해서 서버에서 클라이언트에 화면에 어떻게 표시할 것인지 내용을 전달하고 클라이언트는 단순히 해당 내용을 화면에 표시하기만 하는 스펙을 의미한다. 이 기술을 통해 앱 배포 없이 서버 배포만으로 새로운 화면을 구성할 수 있다.

 

원리는 간단하지만 간단하지 않다. (이해하기 쉽게 설명해 주셔서 감사합니다..) JSON을 통해서 데이터를 전달할 때, UI를 그리기 위한 모든 정보를 전달하는 것이다. 예를 들어 element를 통해 어떤 UI를 그릴 것인지, UI 안에 들어가는 정보는 무엇이 있는지, left 에는 어떤 이미지가 들어가고 right 에는 어떤 버튼이 들어가는지를 다 전달하는 것이다. 이외에도 HomeDST에는 로그 등 여러 가지가 연관되어 있었다.

 

모든 화면에 HomeDST가 적용되지는 않았는데, 서버에 모든 로직을 옮기기에는 현실적인 문제가 있고 (서버, 클라이언트가 분담했던 일을 서버가 가져오면서 서버 개발자의 리소스가 급격하게 늘어남) 새로운 UI를 만든다면 결국 사용자는 앱을 업데이트해야 하기 때문이다. 따라서 네이티브, 웹에 이어서 하나의 서비스를 만드는 데 사용할 수 있는 또 하나의 무기로 가져가고, HomeDST에서 더욱 범용적이고 사용성을 높여 DST로 만들 것이라고 하셨다.

 

 

 

 

추가 이벤트

 

 

실시간 스트리밍 중에 이벤트 참여 방법을 알려준다고 하셔서 더 열심히 들었던 것 같다. 내일도 컨퍼런스가 있을 예정이기 때문에 참여 방법에 대해서는 노코멘트하겠다. 제발 에어팟 맥스..