3월 25일 토요일, DROID KNIGHTS 라는 안드로이드 기술 컨퍼런스에 다녀왔다. 근 7개월 만에 후기를 남긴다. 개인 노트에는 어느 정도 정리를 해뒀었는데 블로그에 올리는데 부담을 느껴 미루다보니 이제서야 올리게 되었다.
드로이드 나이츠는 ‘오직 안드로이드 개발자들을 위한 수준있는 독립 컨퍼런스’라는 이름으로 올해 처음으로 열리는 안드로이드 컨퍼런스다. 구글에서 주최하는 GDG Korea Android Conference 가 매년 열리고 있는데 이 외에 회사에서 주최하지 않는 안드로이드 기술 컨퍼런스는 내가 알기로는 처음이다. 앞으로도 매년 개최할 계획이 있는 것 같다. 국내에 안드로이드 개발자가 많은데 규모가 더 커져 세션 수도 늘어나고 트랙도 늘어나서 안드로이드 개발자들의 축제가 되면 좋겠다.
SESSION
등록
시작 시간보다 여유있게 가서 금방 등록을 마쳤다. 참가비 3만원으로 온오프믹스를 사전 등록을 해야 한다. 머그컵, 티셔츠, 스티커, 스폰서 기업 홍보 책자, 소품 등을 기념품으로 받았다. 스폰서 기업은 구글, 레진코믹스, 스마트 스터디, 이브레인 등에서 대회의실 앞에 각각 책상 한개 규모로 부스를 열었다. 카페 업체에서 무료 커피 지원도 있었다.
오프닝
이 행사를 어떻게 열게 되었는지, 어떻게 진행할 것인지 간략한 소개를 하였다. 일본의 드로이드 카이기와 같은 안드로이드 컨퍼런스를 우리나라에서도 열겠다는 생각으로 시작했다고 한다. 파이콘 운영진이나 GDG Korea Slack 등 온오프라인에서 많이 볼 수 있는 분들이 주를 이루어 준비하고 운영하는 것으로 보였다.
Compose everything with rx & kotlin
요즘 많이 사용하고 있는 Rx와 Kotlin을 어떻게 적용하고 사용하고 있는지에 대한 발표였다. Rx와 Kotlin 모두 익숙하지 않아 발표 자료에 있는 샘플 코드들이 Rx의 특성인지 Kotlin의 특성인지 구분하기 어려웠고 이해도 쉽지 않았다. RxJava라고 설명을 하면서 샘플 코드는 Kotlin인 경우가 많아서 그랬던 것 같다. 이해하기 어렵다보니 이런 방향이 도대체 얼마나 좋은 코드인지, 이게 앞으로 나아갈 방향인지 조금 의문이 들었다.
Some OK Practices in Android Development
뱅크샐러드를 개발하는 레이니스트 CTO 님의 발표였다. 사전에 공지된 제목과는 다른 제목으로 발표가 진행되었다. 현재 유행하는 안드로이드 기술, 라이브러리 등을 사용하면서 엉클 밥의 클린 아케텍쳐를 어떻게 적용했는지 각 레이어에 대한 발표였다. 큰 그림부터 세세한 부분까지 설명을 했는데 레이어를 저렇게 많이 쪼개야할 필요가 있나 싶기도 했지만 잘만 운영된다면 좋은 방향인 것 같다.
안드로이드 스튜디오 플러그인 만들어보기
기대한 내용과는 다른 내용이었다. 안드로이드 OS 개발에는 적절한 IDE가 없기 때문에 직접 플러그인을 만들었다고 하고 InteliJ Plugin 개발을 어떻게 하는지에 대한 설명이었다. 플러그인을 개발하기 위해 제공되는 것들이 생각한 것보다 불친절하다고 하였고 이를 어떻게 해결했는지에 대한 내용이 주였다.
점심시간
죠샌드위치, 써브웨이 샌드위치 중 하나를 받아서 먹을 수 있었다. 먹을 곳은 따로 없어서 회의실 앞 공간에서 대부분 서서 먹었다. 음료는 따로 없었고 마약 커피라고 해서 조그만 플라스틱 컵에 아이스 커피를 먹을 수 있었다. 생수 500ml 한병씩 제공되었으면 좋겠다는 생각이 들었다.
Firebase를 실제 모바일 백엔드로 사용 했을때 생기는 일들
Firebase를 메인 백엔드 솔루션으로 사용할 때 겪었던 문제를 주로 발표하려고 했으나, 발표 하기 몇주전에 새로운 기능들이 소개되면서 어느 정도 해결이 되었다고 한다. 그래도 흥미로웠고 재밌는 발표가 많았다.
Firebase Remote Config로 배포없이 앱 운영하기
Firebase Remote Config을 어떻게 사용하는지 설명과 실제 예제, 실습을 하는 간단한 발표였다. 마지막 부분에는 명함 관리앱 리멤버에서 실제로 어떻게 사용하고 있는지 간략하게 보여줘서 좀 더 와닿는 발표였다. 잘만 사용하면 활용할 곳이 많아 보였다.
빠르고 지속적으로 전달하기: Continuous Delivery for Android
캐시슬라이드를 개발하는 엔비티에서 Android Continuous Delivery에 대한 고민과 역사를 들을 수 있었다. 관심이 많은 부분이라 흥미로웠다. Android를 개발할때 github에 붙여 사용해 본 Travis-CI, Circle-CI가 각각 아쉬운 점이 있었는데 내가 느낀 것과 비슷한 부분도 많았다. 현재는 bitrise를 이용한다고 한다.
UiAutomator와 AWS Device Farm 을 활용한 UI 테스팅 자동화
스타트업 ‘숨고’에서 UI 테스트를 하고 있는 방법에 대한 내용이었다. UI 테스트는 결국 얼마나 많고 다양한 디바이스에서 안정적으로 테스트를 할 수 있는지가 관건인데 이를 제공하는 AWS Device Farm이 현재로선 끝판왕으로 보였다. UI 테스트를 위한 UIAutomator 2에 대한 세세한 설명과 시행착오 등이 발표 내용이었다.
Anatomy of Realm (Realm 심층 분석)
Realm을 잘 모르다보니 내용을 이해하기 너무 어려웠다. 특히 이 발표 때에만 프로젝터 연결에 문제가 많아서 두 차례 정도 중단이 되어 흐름을 잘 이어가질 못 했다.
KeyFrame과 Lottie로 인터렉티브한 애니메이션을 구현해보기
facebook에서 만든 KeyFrame과 Airbnb에서 만든 Lottie 를 소개하고 결국 많은 기능이 있는 Lottie를 사용해보았다며 어떻게 쓰는지 샘플을 보여주고 설명하였다. Adobe After Effects로 일단 작업을 하고 이를 벡터 방식으로 변환하여 각 모바일 플랫폼마다 사용할 수 있게 해준다. 아직은 초기 단계여서 그런지 리소스, CPU 문제 등이 있어 약간의 한계가 있지만 흥미로운 내용이었다.
경품추첨
LG G Watch, 레오폴드 키보드, 안드로이드 피규어 등 여러 경품이 걸린 추첨을 진행했다. 경품 추첨 때문인지 많은 사람들이 남아있었고 즐겁게 마무리될 수 있었다.
좋았던 점
안드로이드 독립 컨퍼런스라는 것 자체가 가장 좋은 점이었다. 국내 안드로이드만을 위한 컨퍼런스가 많지 않고 기업이랑 상관없이 독립적으로 열리는 컨퍼런스는 이번이 처음이기 때문이다. 다양한 기업과 다양한 개발자들로부터 많은 영감을 얻을 수 있는 기회였다.
아쉬운 점
Realm 사이트를 통해 동영상과 발표 자료를 같이 올리려다보니 발표 슬라이드와 발표가 공유되는데 시간이 꽤 걸렸다.