こんにちは。SWETの加藤です。
1月29日、DeNAは技術カンファレンス「 DeNA TechCon 2016 」を開催いたしました。 DeNAエンジニアブログでは数回に渡りその内容を振り返り、発表がどのようなものだったかをご紹介します。
第4回となる本記事は、以下の講演についてのものになります。
DeNAが取り組む Software Engineer in Test
品質向上と開発生産性向上を目的とした、SWETという部署が紹介されました。
登壇者はSWETの NAKAGAWA MASAKI ( @ikasam_a )です。
GoogleでのSET(Software Engineer in Test)に由来するSWET(SoftWare Engineer in Test)の役割や、DeNAでSWETが発足してから現在までの歩みが語られました。
SWETではブラウザテストを自動的に実行する Selenium がよく使われており、Seleniumを実際のアプリケーションテストに導入する手順やTIPSを解説する Selenium実践入門 にSWETのメンバーが執筆に参加しているそうです。
また、SWETが扱っている最新の案件として、スマートフォンアプリのテストを管理・実行する、 STF というデバイスファームが説明されました。このSTFはCyberAgent社発のオープンソースのプロジェクトで、Android端末を管理し、ブラウザから操作できるという機能を持っています。SWETではこれをモバイル自動テストに導入するため、v2.0.0で追加されたAPIを実装しました。
最後は、SWETというキャリアパスについての話題となりました。SWETはまだ認知度は高くないが、開拓すべき新技術が多く、アーキテクトに繋がるひとつの道である、という見解が述べられました。
スライドはこちらからどうぞ: DeNAが取り組む Software Engineer in Test
DeNAの分析を支える分析基盤
DeNAのサービスにおいてユーザの志向や反応を分析する分析推進部から、弊社の YAMADA KENSHINが登壇しました。
アナリストに求められる役割や、現在のDeNAの分析体制、分析基盤のこれまでの歩みについてが話されました。DeNAではもともとサービスの開発チームが評価・分析を行っていたのですが、モバゲーが急成長するにつれて、分析の専門チームが必要とされるようになってきたそうです。2010年に専門組織が発足し、大量のログからユーザ行動を分析するために、HadoopやVerticaなどを導入しながら、増大するデータに対処してきたのだとか。
さまざまなサービスの分析を行う全体構成についても説明されました。ログの回収と監視、集計バッチのフロー、分析結果の可視化のために、CassandraやStorm/HBaseを組み合わせて使っているとのこと。また、KPIレポートを作成するために、Argusという内製のレポートツールを開発したそうです。
また、分析にとどまらないデータ活用の取り組みとして、 ハッカドール のような推薦システムが紹介されました。ユーザーの行動から、趣味にあったゲームを推薦したり、ファッションのテイストが似ている商品に誘導する仕組みに応用できるそうです。
スライドはこちら: DeNAの分析を支える分析基盤
これからの Microservices
理想的なMicroservicesの実現に求められるAPIやそのプロトコル、サービスのアーキテクチャがトピックとなりました。
弊社の YAMAGUCHI TORU ( @zigorou )の発表です。
MicroservicesとMonolithicなアーキテクチャの違いや、RESTという制約が現実の課題にどこまで有効かなど、現実のアプリケーションとRESTの思想がどう結びつくのかが語られました。また、Content Negotiation、JSON SchemaとJSON Hyper Schema、API Gateway、Access tokenなどについて、Microservicesのアーキテクチャでアプリケーションを実装する観点からの見解が述べられました。
スライドはこちらです: これからの Microservices
結びに
DeNA TechCon 2016の紹介記事は今回が最後となります。
わずか1日間のイベントでしたが、非常に濃密な時間でした。高度な内容が多く、私個人としても学ぶことが大きかったと感じます。興味を持たれたかたは、ぜひ発表のスライド資料もご覧ください。
最後まで読んでいただき、ありがとうございます!
この記事をシェアしていただける方はこちらからお願いします。