Category Archives: Miscellaneous

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입니다.
저는 이번 글에서 앱 크기를 줄이는 방법을 공유하려고 합니다.

TRACKIT에서 딥링크를 사용하는 방법

안녕하세요. LINE GAME PLATFORM 개발 팀에서 TRACKIT을 개발하고 있는 이형중입니다. TRACKIT은 2018년 말 오픈한 서비스로 웹에서 애플리케이션에 접근하거나 실행한 사용자를 추적하는 서비스입니다. LINE GAME에 마케팅용 추적 기능이 없어서 TRACKIT을 개발하게 되었는데요. 현재 LINE POP2Jumpti Heroes 등의 게임에 적용하여 서비스하고 있습니다.


이번 글에서는 TRACKIT을 개발하면서 적용한 딥링크(deeplink)의 개념과 종류, 사용 방법에 대해 공유하려고 합니다.


2019 LINE API Experts에 선정된 멤버 소개

LINE API Expert는 LINE API에 대한 해박한 지식을 갖추고 개발자 커뮤니티에서 영향력을 행사하는 유능한 개발자를 발굴하는 프로그램입니다. 선정된 개발자에겐 ‘LINE API Expert’라는 타이틀이 주어지는데요. LINE은 LINE API Expert에게 활동 지원을 비롯한 여러 혜택을 제공하고 있습니다.  

LINE API Expert를 선정할 땐 개발자 커뮤니티에서의 영향력, 쓰기와 말하기(발표 능력)를 포함한 커뮤니케이션 능력, LINE과 관련된 소프트웨어 개발 능력, 향후 LINE과 기술 파트너가 될 수 있는 가능성 등 많은 요소를 고려하고 있습니다. 그럼 많은 후보들 중에서 이번에 새로 선정된 분들을 소개하겠습니다.

코딩 한 줄 없이 라인 봇으로 거짓말 탐지기 만들기!

안녕하세요. 챗봇을 이용한 재미있는 기능들을 연구하고 있는 LINE AFD Labs입니다. 오늘은 LINE Messaging API를 활용하여 거짓말을 탐지하는 라인 봇을 만드는 방법에 대해 살펴보겠습니다. LINE Messaging API를 이용하면 봇을 통해 사용자에게 메시지를 보낼 수도 있고, 사용자가 보낸 메시지에 응답할 수도 있습니다. API에서 제공하는 샘플 봇을 이용하면 코딩 한 줄 없이 손쉽게 봇을 만들 수 있는데요. 먼저, 거짓말을 탐지하는 라인 봇이 어떻게 동작하는지 화면으로 살펴보겠습니다.

Agile + DevOps EAST 2018에 다녀왔습니다

저는 작년 11월, 미국 플로리다 올랜도에서 열린 Agile + DevOps EAST 2018에 다녀왔습니다. Agile + DevOps는 TechWell Corporation에서 주최하는 콘퍼런스 중 하나입니다. 콘퍼런스에선 어떻게 하면 안전하고 신뢰할 수 있는 소프트웨어 애플리케이션을 좀 더 빨리 사용자에게 전달할 수 있을지에 대한 내용을 다룹니다. 또한 그렇게 하기 위해 여러 기능의 이해 당사자들을 하나로 모을 수 있는 애자일과 DevOps 사례도 다룹니다.

LINE의 OpenJDK 적용기: 호환성 확인부터 주의 사항까지

2018년 오라클의 라이선스 체계가 변경되면서 2019년 1월 이후 더 이상 무료로 Oracle JDK를 사용할 수 없게 되었습니다. 이에 LINE 내부에서는 사전에 OpenJDK를 적용하기 위해 필요한 사항이나 검토 항목을 정리하기 위하여 TF(task force)를 구성하였고, 진행된 내용과 사용된 기술적인 사항들을 정리하고자 이 글을 작성하게 되었습니다.

GitHub Pull Request가 자동으로 close되는 경우는?

LINE 개발 팀에서 서버 쪽 개발을 담당하고 있는 Ohara(@kory1202)입니다. 저희 팀은 PR(Pull Request)을 master 브랜치(branch)로 생성하는 방식으로 Git을 운영하고 있습니다. 이런 방식으로 Git을 운영하면 PR을 merge했을 때 다른 PR이 ‘자동으로 close되는 상황’이 발생하곤 했는데요. 정확히 어떤 조건에서 자동 close되는 것인지 확실히 알 수 없었습니다. GitHub Help > Closing a pull request를 읽어 보아도 원하는 답이 나오지 않더군요. 그래서 아예 직접 정리를 해보았습니다.

효과적인 코드 리뷰를 위해서

종종 팀 내에서 코드 품질이 이슈가 됩니다. 그리고 유닛 테스트와 코드 커버리지를 향상시키는 방법에 대해 모두가 한 마디씩 던집니다. 하지만 그리 오래가진 못합니다. 모두들 다시 바빠지면서, 코드 품질에 대한 관심은 금세 식어버리기 때문입니다. 하지만 아마도 대부분은 1년 이내에 데쟈뷰를 겪게 될 것입니다. 내년이 되면 또 코드 품질이 이슈화 될 것이고, 이전에 나왔던 아이디어와 똑같은 것들을 또 테이블 위에서 보게 될 것이니까요.

안녕하세요. 저는 LINE NOW에서 테스트 자동화 관련 업무를 맡고 있는 QA(Quality Assurance) 엔지니어 Bryan Liu입니다. 이번 글에선 LINE 대만에서 유닛 테스트와 코드 리뷰 프로세스를 활성화시키기 위해 제가 했던 일들을 소개해드릴까 합니다.

(보이 스카웃 규칙 – 항상 네가 처음 만난 것보다 더 나은 상태로 코드를 만들어놓고 떠나라)
코딩을 위한 보이 스카웃 규칙, from {codemotion}