Technology Archives - Buzzvil
6월 14, 2018

[Tech & Industry] A/B Testing – Sampling부터 Interpretation까지

저희 버즈빌에서는 여타 모바일 환경에서 작업하는 회사와 마찬가지로 무수히 많은 a/b 테스팅을 통해 프로덕트를 개선하고 있습니다. 이번 포스팅에서는 a/b 테스팅을 실제로 수행할 때 주로 발생하는 궁금증에 대해서 경험적으로 느낀 바를 공유하려 합니다.
3월 14, 2018

[Tech Weekly] TCP/IP 101

버즈빌 개발팀에서는 매주 수요일, 모든 팀의 개발자들이 모여 본인이 관심있는 분야에 대한 노하우나 담당하고 있는 업무와 관련된 새로운 기술에 대한 논의를 진행하는 시간을 가지고 있습니다.  이 시간을 통해 내가 알고 있는 것들에 대해 더 확실히 알고 모르는 것들에 대해 배우며 이를 바탕으로 보다 효율적이고 창의적으로 업무를 진행하기 위해 노력하고 있습니다.
3월 7, 2018

[Tech Weekly] MySQL Index

버즈빌 개발팀에서는 매주 수요일, 모든 팀의 개발자들이 모여 본인이 관심있는 분야에 대한 노하우나 담당하고 있는 업무와 관련된 새로운 기술에 대한 논의를 진행하는 시간을 가지고 있습니다.  이 시간을 통해 내가 알고 있는 것들에 대해 더 확실히 알고 모르는 것들에 대해 배우며 이를 바탕으로 보다 효율적이고 창의적으로 업무를 진행하기 위해 노력하고 있습니다.
2월 28, 2018

[Tech Weekly] Logs, AWS Athena, AWS Glue

버즈빌 개발팀에서는 매주 수요일, 모든 팀의 개발자들이 모여 본인이 관심있는 분야에 대한 노하우나 담당하고 있는 업무와 관련된 새로운 기술에 대한 논의를 진행하는 시간을 가지고 있습니다.  이 시간을 통해 내가 알고 있는 것들에 대해 더 확실히 알고 모르는 것들에 대해 배우며 이를 바탕으로 보다 효율적이고 창의적으로 업무를 진행하기 위해 노력하고 있습니다.
2월 12, 2018

[Tech Blog] Go 서버 개발하기

저희 서버는 대부분 Django framework 위에서 구현된 광고 할당 / 컨텐츠 할당 / 허니스크린 앱 서비스 이렇게 나눌 수 있는데 Python 이라는 언어 특성상 높은 성능을 기대하기가 어려웠습니다. 하지만 세가지 서비스에서 락스크린에서 어떤 컨텐츠나 광고를 보여줄지 결정하는 Allocation(할당) API 가 가장 많이 호출되고 있었는데 빈도로 보면 80% 정도로 높은 비중을 차지하고 있어서 이 Allocation API 들을 성능이 좋은 다른 언어로 구현하면 어떨까 하는 팀내 의견이 있었습니다. (...)
9월 27, 2017

[Tech Blog] 아마존 에코를 활용한 음성 인식 에어컨 제어

버즈빌 사무실에는 한 층에 3대의 에어컨이 있습니다. 여름에는 무려 이 3대의 에어컨을 일일히 켜주어야 하는 불편함이 있었습니다. 심지어 2대는 삼성 나머지 한대는 LG 에어컨으로 모델이 달라서 리모콘도 두 개나 필요합니다. 한번에 에어컨을 모두 켤 수 있게 하면 사람들이 좋아하지 않을까, 그리고 간지나게 음성명령으로 제어하면 좋겠다는 생각을 했습니다. 요즘엔 세상이 참 좋아져서 라즈베리파이, 아마존 에코 등을 활용하면 비교적 싼 가격에 원하는 것을 만들 수 있습니다. 프로젝트의 목표는 다음과 같이 정했습니다.
8월 8, 2017

[Tech Blog] 안드로이드 파편화(Fragmentation)에 대하여

OS부터 하드웨어까지, 다양한 환경에서 안정적이고 일관되게 구동하는 시스템을 만들기 위해 꼭 해결해야하는 파편화에 대해 버즈빌 주니어 엔지니어가 직접 쓴 테크 블로그를 통해 알아봅니다.
5월 12, 2017

[Tech Blog] 오픈소스를 쇼핑하는 엔지니어

오픈소스를 많이 사용하게 되는 스타트업 엔지니어는 항상 고민을 합니다. 쇼핑을 할 때 가격을 비교하고 사용기를 읽어보는 것 처럼 오픈소스를 선택할 때에도 자신의 기준에 맞춰서 여러가지 비교를 해보고 다른 분들의 사용기를 참고하기도 합니다. 가끔은 쇼핑중독처럼 어떤 오픈소스가 좋은지 비교하는데서 즐거움을 느끼기도 합니다(?). 허니스크린 서버를 처음 개발하기 시작했을 때에도 당연스레 많은 고민을 했었습니다.
4월 18, 2017

[Tech & Industry] 효과적인 LTV 활용기

버즈빌에서는 LTV(Lifetime Value)를 많은 곳에 사용하고 있습니다. LTV를 이용한 UA(User Acquisition)채널 관리도 그 중 하나입니다. 이번 포스팅에서는 버즈빌이 LTV를 구하기까지 겪었던 시행착오와 함께 LTV 계산의 응용에 대해서 알아보도록 하겠습니다. 모바일 광고 인더스트리에서는 공통적으로 중요시 여기는 지표들이 있습니다. NRU(New Registered User), DAU(Daily Active User), 그리고 retention rate은 모바일 광고 플레이어라면, 그리고 특히 마케터라면, 하나라도 놓쳐서는 안되는 필수적인 지표들입니다. 여러 채널들을 통해서 유입되는 NRU를 관리하고, 이렇게 유입된 유저들의 retention rate을 관찰하면, 그 비지니스의 DAU가 결정되게 됩니다.
3월 31, 2017

[Tech Blog] 개발자의 입장에서 본 버즈빌의 개발 문화: 애자일 소프트웨어 개발

개발자가 가장 행복할 때는 개발에 집중할 수 있을 때다. 화창한 아침 기분 좋게 출근해서 어제 작업하던 화면을 하나씩 불러온다. 모니터에 코드가 적힌 편집툴이 하나씩 올라오고 머릿속에도 관련 기능 개발을 위한 자료 구조와 알고리즘이 하나씩 ‘로드’된다. 이 데이터는 이쪽, 이 부분은 이렇게 로직을 짜봐야지. 집중해서 코드를 짜고 있으면 어느새 모니터 외에는 아무 것도 보이지 않는다. 이러다 보면 누군가 어깨를 두드린다. “점심 먹으러 가요.” 많은 개발자가 이런 순간을 행복하게 느낀다. 집중해서 일할 때 느끼는 엔도르핀은 초콜릿 5개를 한꺼번에 입에 넣었을 때보다 덜하지 않다.
2월 22, 2017

[Tech Blog] 딥러닝 (Tensorflow) 을 이용한 추천시스템 개발

모바일 잠금화면 애드네트워크 버즈빌에서는 머신러닝에 기반한 정교한 타겟팅으로 사용자 경험을 증대시키는 한편, 광고 플랫폼으로서의 기술적 우위를 지속적으로 지켜나가기 위하여 여러 시도를 진행하고 있는데요. 그래서, 이번 기술 블로그에서는 딥러닝을 이용해 개인화된 컨텐츠를 자동 추천하는 기능과 그 로직의 개발 과정 그리고, 그 결과를 소개하려고 합니다. 기초적인 neural network background 가 있다는 가정하에 코드는 최소화 하고 머신 러닝 모델의 high level design 위주로 기술되었으며, 자세한 수식/증명/예시/코드 등에 관해서는 도움이 될만한 참고 링크들은 첨부되어 있습니다. 버즈빌에서 컨텐츠와 머신러닝 Product manager를 맡고 계시는 Stanford 머신 러닝(Machine Learning) 분야 학석사 출신 Mike가 수고해주신 2월의 버즈빌 기술 블로그 지금 소개합니다.
1월 31, 2017

[Tech Blog] Android MVP Pattern – What, Why and How?

부끄럽지만 저는 버즈빌의 초보 개발자입니다. 버즈빌에서의 다양한 경험들이 저를 많이 변화시키고 있구요. 버즈빌의 뛰어난 개발자들 사이에서 일을 배워나가면서, 앞으로 향후에 저도 뛰어난 개발자가 되기 위해서는 반드시 공부해 두어야겠다고 생각한 몇 개의 영역이 있습니다. 그 중 하나가 '다양한 소프트웨어 디자인 패턴을 적절한 곳에 적용시키는 방법'이었습니다. 다행히 최근에는 많은 사람들의 경험을 통해 검증된 디자인 패턴이 많이 개발되고 있어, 다양한 패턴을 꾸준히 탐색해서 활용할 수 있는 안목만 키울 수 있다면 학습에 큰 어려움을 없을 것이라 생각하였습니다. 그동안 주로 기능적으로 시스템을 정상 동작하도록 만드는 것에만 집중했었지만, 여기서 더 나아가 가독성과 확장성이 좋고 협업하기 쉽게 만드는 구조를 짤 줄 알아야 장기적으로 더 좋은 프로덕트를 만들어 낼 수 있을 것이라는 어찌보면 막연한 생각도 배움에 대한 호기심을 자극하는데 한 몫 하였습니다.