Android 앱 빌드 속도를 높이는 10가지 방법

이번 글에서는 Android 앱 빌드 속도를 높일 수 있는 10가지 방법에 대해 알아보려고 합니다. 빌드 속도는 생산성 향상을 위해 매우 중요한 요소입니다. 저는 APK 하나를 생성하는 데에 8분 넘게 걸렸던 적이 있습니다. 각 프로젝트 상황에 따라 더 오래 걸리는 팀도 있을 텐데요. 그게 바로 우리 팀 얘기라면 이번 블로그를 꼭 읽고 제가 소개드리는 방법을 잘 활용하셨으면 좋겠습니다.

2019년 상반기 LINE 인턴 채용 코딩테스트 문제 해설

LINE에서 개발 직군을 뽑을 때 신입이든 경력이든 가장 먼저 보는 것이 코딩 테스트입니다. LINE의 코딩 테스트는 일반적인 알고리즘 경진대회와는 경향이 조금 다른데요. 알고리즘 경진대회는 1등을 가려내기 위한 복잡하고 어려운 문제를 출제하는 경향이 있다면, LINE은 면접으로 가는 과정에서 개발자로서의 개발 능력을 확인하는 데 목적이 있습니다.

이를 위해서 어려운 알고리즘을 이해하고 활용하는 데 익숙한 기술을 가진 분들을 찾기보다는, 문제의 요구사항을 이해하고 컴퓨터공학 이론을 바탕으로 그에 맞는 적절한 해결책을 찾아 구현할 수 있는 기술을 가진 분들을 찾고자 합니다. 어떤 문제가 나오는지 이해할 수 있도록 2019년 상반기 코딩 테스트에서 실제 출제된 문제와 간단한 해설을 공유합니다.

Android 앱의 크기를 줄이는 10가지 방법

안녕하세요. LINE Thailand에서 테크놀로지 에반젤리스트를 맡고 있고, Android 개발자로 5년 넘게 일해왔으며, Firebase의 Google Developer Expert이기도 한 Jirawat Karanwittayakarn입니다.
저는 이번 글에서 앱 크기를 줄이는 방법을 공유하려고 합니다.

JavaScript SDK 성능개선 방법 – 압축과 최적화로 실행시간 단축하기

안녕하세요. 저는 QUICK Game Platform Dev 팀에서 게임에서 필요한 여러 기능을 제공하는 QUICK Game SDK를 개발하고 있는 이재호입니다. QUICK Game Platform이란 HTML5 기반의 게임을 서비스하기 위해 LINE에서 제공하는 플랫폼입니다. 저는 이번 글에서 QUICK Game SDK를 개발하고 개선하면서 SDK의 크기를 줄이고 성능을 개선했던 사례를 공유하려고 합니다. 

Flutter, 왜 선택하지 못했나

안녕하세요. LINE Biz+ Pay App Dev 팀에서 앱 클라이언트의 iOS 버전을 개발하고 있는 박혁준입니다. 저는 얼마 전 열렸던 LINE Developers Meetup에서 제가 발표했던 내용을 공유하려고 합니다. Flutter를 새로운 프로젝트에 사용해 보려고 조사했던 내용과 적용하려고 했던 이유, 그리고 적용하지 못했던 이유까지 한 번 짚어보겠습니다. 특히 Flutter에 대해 잘 모르거나 적용해 보면 어떨까 고민했던 분들에게 도움이 되었으면 좋겠습니다.


Flutter 로고

LINE Manga 데이터베이스 샤딩 – 데이터베이스 엔지니어 편

안녕하세요. 데이터베이스 팀 Oda입니다. LINE Manga의 데이터베이스 샤딩(sharding) 작업에 대해서 서버 엔지니어 편을 먼저 소개드렸는데요. 이번 글은 데이터 엔지니어 편입니다. 샤딩을 하게 된 배경과 대응 방침을 데이터베이스 엔지니어 입장에서 검토한 사항을 중심으로 공유하겠습니다.

테크니컬 라이팅 컨퍼런스: API the Docs Chicago 2019 방문기

미국에는 머스타드 박물관이 있다고 합니다. 무려 머스타드를 위한 박물관도 있는데! ‘헨리 밀러’나 ‘어니스트 헤밍웨이’ 등 훌륭한 작가와 오랜 세월 전세계적으로 사랑받고 있는 작품을 쏟아낸 나라에 작가를 위한 박물관이 없다는 사실에 개탄을 금치 못한 사람들이 의기투합하여 2009년 재단을 설립하고 2017년, American Writers Museum(AWM)을 탄생시켰습니다. 그리고 바로 이 AWM이 위치한 시카고에서 API the Docs Chicago 컨퍼런스가 개최되었습니다. 그러고 보니 어니스트 헤밍웨이도 시카고 출신이네요(시카고 여행지 추천 목록에 헤밍웨이 생가가 있다는 사실!). 그동안 유럽에서만 개최되어 온 API the Docs가 처음으로 미국에서 개최된 것도 뜻깊은데 장소까지 테크니컬 ‘라이터’에게 의미있는 장소였던 이번 API the Docs Chicago에 참석하게 된 후기를 늦게나마 여러분과 나누고자 합니다.


대규모 Kubernetes 클러스터 구축기

LINE에서는 개발자가 개발에만 집중할 수 있도록 개발 외의 인프라 관련 업무를 대신 수행해 주는 Kubernetes 기반 서비스 Nucleo를 자체 개발하여 LINE 내부용으로 사용하고 있습니다. Nucleo에는 현재 800여 개의 앱이 약 4,000개의 pod로 서비스되고 있는데요. 앱의 개수는 계속 빠르게 증가하고 있습니다. 모든 워크로드는 개발 구역(region)에 약 60대, 운영 구역에 약 80대가 설치된 PM(physical machine)과 VM(virtual machine)으로 운영하고 있으며, 그 외에 Nucleo 개발용 클러스터가 약 3~40개, feature 테스트용 노드 3개로 이루어진 미니 클러스터 약 20~30개 가량이 구동되고 있습니다. 이렇게 다수의 Kubernetes 클러스터를 운영하기 위해서는 빠르고 안정적으로 Kubernetes 클러스터를 설치하고 운영할 수 있는 방법이 필요한데요. 그래서 Nucleo 팀에서는 Kubernetes 클러스터 프로비저닝을 목적으로 ‘Caravan’이라는 도구를 개발하여 사용하고 있습니다. 최근에 팀에서는 이 Caravan이 앞으로 늘어날 앱의 수요에 대응할 수 있는지 알아보기 위해 많은 양의 Kubernetes 클러스터를 생성하고 테스트해 보았는데요. 이번 글에선 이 테스트의 상세한 내용과 테스트를 통해 배운 점에 대해 설명하겠습니다.

Google I/O 2019 – Thinking in 5G Workshop 세션 참석 후기

안녕하세요. LINE+ Platform Product Planning에서 기획자로 일하고 있는 권순현입니다. 저는 지난 5월 7일부터 9일까지 진행되었던 Google I/O 2019에 다녀온 이야기를 전해드리려고 합니다. Google I/O 2019에서 열린 모든 세션은 동영상으로 제작되어 YouTube Google Developers 계정에 업로드되어 있습니다(참고). 또한 현장 분위기를 전하는 글과 발표도 이미 많이 접하셨을텐데요. 그래서 이번 글에서는 유일하게 동영상으로 제작되지 않은 세션인 ‘Thinking in 5G Workshop’ 세션 참석 후기를 공유드리고자 합니다.

LINE Manga 데이터베이스 샤딩 – 서버 엔지니어 편

안녕하세요. LINE Manga 개발을 담당하고 있는 Ito입니다. LINE Manga의 데이터베이스 샤딩(sharding) 작업에 대해서 서버 엔지니어 편, 데이터베이스 엔지니어 편으로 나누어 소개하려 합니다.

이번 글은 서버 엔지니어 편으로, 샤딩을 하게 된 배경과 대응 방침, 애플리케이션에서 수정한 사항을 중심으로 공유하겠습니다.