빅데이터 프레임워크를 활용한 데이터 인프라 구축

빅데이터 분석을 위한 인프라 구축에 대한 경험을 공유하고자 합니다. 최근 데이터 분석을 위한 데이터 처리 시간의 증가로 기존 데이터 처리방법의 한계를 경험하였습니다. 결국 빅데이터 프레임워크를 검토하고 최종적으로 기술을 선정하여 도입하게 되었습니다. 이 과정에서의 경험이 비슷한 고민을 하는 사람들에게도 도움이 될 것으로 여겨 글을 작성하고 공유하게 되었습니다.   많은 회사에서 그렇듯이 데이터를 기반으로 현재 서비스의 현황을Read more

AWS Code Deploy를 통한 배포 자동화

서버 배포는 단순하고 반복작업이지만 절차가 적지 않아 실수를 할 가능성이 높습니다. 또 한번의 실수는 커다란 시스템 장애로 이루어질 수 있기 때문에 많은 분들에게 배포란 꽤나 부담스럽고 큰 업무로 느껴집니다. 특히 하루에 여러번의 배포를 진행해야 하는 날이면 시간도 시간이지만 스트레스가 크죠. 드라마앤컴퍼니에서 이전까지는 서버 배포를 진행하는 개발자가 몇 없고 그들도 그 업무에 매우 익숙했기 때문에 큰Read more

아름다운 모델 구조를 찾아서

어떤 소프트웨어든 OOP 기반이라면 모델 구조를 설계하는 것부터 시작합니다. 모델이라 함은 소프트웨어를 Object-Oriented로 만들기 위해 현실에 존재하는 개념을 묶은 객체를 의미합니다. 모델은 소프트웨어를 구성하는 작으면서도 근본적인 단위이기 때문에 처음 정의하는 것에 따라 구현방향과 성능에 영향을 미칩니다. 따라서 상황에 적절한 모델을 설계하고 활용하는 것이 중요합니다. 이번에 리멤버에서 메신저 기능을 추가하면서 지금까지와는 다른 속성의 모델들이 추가되었습니다. 자연히Read more

Ruby 코드 성능 최적화 (feat. ruby-prof, Benchmark)

초기 스타트업은 기능에 비해 성능이 덜 중요시 되는 개발을 하게 됩니다. 사용자가 적을 땐 성능을 신경쓰는 것 보다 아이템을 빨리 검증하기 위한 기능 개발이 더 중요하기 때문인데요, 드라마앤컴퍼니도 처음엔 기능 위주의 개발을 하다 사용자가 늘어남에 따라 자연스럽게 성능도 중요시 하여 개발하고 있습니다. 드라마앤컴퍼니의 대부분 Web/API 프로젝트들은 Ruby와 Ruby on Rails로 만들어졌습니다. Ruby는 느리다고 자주 까이는Read more

드라마에서 1년의 성장기

2015년 7월에 입사하여 드라마앤컴퍼니에 온지 이제 1년이 지났습니다. 어느 분야든 정체를 겪다가 한번에 올라가는 순간이 있습니다. 저는 120만명 이상이 사용하는 리멤버 서비스의 안드로이드 앱을 혼자 개발하면서 한번에 올라가는 성장을 경험하고 있습니다. 개발 능력도 많이 성장하였지만, 근본적인 것들을 많이 배웁니다. 그리고 배운 것들 중 의미있는 것들을 나누려고 합니다. 원칙있는 개발, 기술부채의 최소화 지금까지 많은 유저가 실제로Read more

안드로이드에 테스트 도입하기

좋은 소프트웨어를 만들기 위해서는 테스트 자동화가 중요합니다. 꼼꼼하고 정확한 자동화 테스트는 QA 비용을 줄이고, 제품의 질을 높입니다. 리멤버의 백엔드는 오래 전부터 TDD를 적용하였습니다. 하지만 클라이언트는 View단과 직접 엮여있기 때문에 겪는 테스트의 어려움과, 빠르게 처리해야 할 비즈니스 요구사항에 밀려, 테스트 자동화를 하지 못하고 있었습니다. 우리는 저번 페이즈 브레이크 때 클라이언트 개발자들끼리 모여 테스트에 대해 논의하였습니다. 그리고Read more

드라마의 Pair Programming과 Code Review 도입 후기

작년 11월에 Tom님과 Jaden님이 처음으로 페어 프로그래밍을 진행하고 도전기를 남겨주셨는데요,   Tom과 Jaden의 첫 페어 프로그래밍 도전기 그 이후로 API, 타이피스트 시스템 등 백엔드 애플리케이션을 중심으로 Pair Programming(이하 PP)과 Code Review(이하 CR)를 개발 문화로 정착시키기 위해 꾸준한 노력이 있었습니다. 본 글에서는 PP와 CR을 적용하면서 느꼈던 점들을 요약하여 말씀드리고자 합니다.   Why PP & CR? PP와Read more

리멤버 앱의 명함인식 기능

안녕하세요. 이번 포스팅에서는 리멤버 앱에 포함된 명함인식 기능에 관한 내용을 소개하려 합니다. 아래에서 그 내용을 간략히 소개해 드리려 합니다. 리멤버 iOS 앱에서 명함 영역 인식하기 Apple의 iOS SDK는 “CoreImage Framework“를 기본으로 제공해 주고 있는데요, 이것은 이미지 처리와 관련된 다양한 기능을 제공하고 있습니다. 저희 리멤버 iOS 앱도 이를 사용하여 명함 영역을 인식해 보기로 했습니다. 사각형 영역Read more

Rails Engine을 이용한 Zeus 프로젝트

1. Problem 드라마앤컴퍼니에서는 리멤버 서비스를 위해 다양한 서버 애플리케이션들을 운용하고 있습니다. 일부 데이터 분석을 위한 소프트웨어를 제외하고는 모두 Ruby on Rails를 사용하여 작성되었고, 크게 아래와 같은 것들이 있습니다. API 서버 애플리케이션: 리멤버 앱 등 클라이언트에서 발생하는 모든 요청을 처리합니다. Typist 서버 애플리케이션: 사용자가 등록한 명함 요청을 타이피스트가 확인하고 입력하는 시스템입니다. Admin 서버 애플리케이션: 운영자가 명함을Read more

개발그룹은 어떻게 일을 하는가? #1

오늘은 개발자 면접을 볼 때 면접자 분들께서 늘 물어보시는 질문인 ‘드라마앤컴퍼니의 개발 그룹은 어떻게 일을 하나요’에 대한 첫 번째 글을 적어볼까 합니다. ‘어떻게 일을 하는지’는 굉장히 광범위한 질문이기 때문에 이번 글에서는 저희의 방법론과 계획 등에 대하여 얘기해보겠습니다. 업무의 방법론이란 굉장히 중요합니다. 무작정 열심히 한다고 해서는 절대로 장기적으로 일을 효율적으로 해낼 수 없습니다. 특히 사람이 많아지면Read more

1 2 3