イベントがあったのが火曜日(4/28)で今日が土曜日(5/2)。寝かせすぎて
発酵するところでした。
社内のSlackで知り、ノリで応募したら当選してしまいました。社内で4人
応募して全員当選していたので、早い順だったんですかね!?しかし、実
際に行った(もしくは行けた)のは私だけだったという。。
会場に入ってまず思ったのが、寒い!
エアコン強めだな。半袖で来なくてよかった #linedevday
— マスタカ (@masutaka) April 28, 2015
お金がかかっておるとも感じました。会場の設備は安っぽくなくて、机や
椅子のキャパシティも十分。ドリンクは飲み放題、クッキーも自由、LINE
グッズのおみやげあり(荷物になるので個人的には不要だったが)。ランチ
の軽食と懇親会(行かなかった)も無料。リクルーティング目的というのも
頷けます。
午前中は4月にCEOになった出澤さんや、CTOの朴さんによる、LINEの概要
や文化のお話でした。午後は会場が2つに別れ、より掘り下げたセッショ
ンが始まりました。
以下は午前中のメモ。
途中、画像へのリンクは
LINEが開発体制、グローバル対応の秘策、サービス基盤の変遷を解説 - ケータイ Watch
を使わせて頂きました。むしろこちらを見たほうが良いかと。
A-1 オープニング 代表取締役社長 CEO 出澤 剛
A-2 LINE Global Culture by 上級執行役員 CTO 朴イビン
- 開発者が国をまたいでプロジェクトを立ち上げる。跨がない場合もある
- リモートコラボレーション
- Trust and Respect
- マネージャーの役割は働きやすい環境を作ることだけ。評価は他のエンジニアから
A-3 LINE Messenger for the World by 上級執行役員 サービス開発担当 池邉智洋
- エンジニアがLINE遠征隊として、実際に現地に赴く
- 現地の人と同じプリペイド携帯を手に入れるところから始める
- エスカレーターを上下したり、地下鉄や飛行機とかの移動中のテストをしたり
- 日本は回線が太いので、あまり対策はしていないそう
- 回線が細い地域は画像のサイズを小さくするなど、パフォーマンスチューニングしている
- あとは、ユーザーがメッセージを送ろうかなとする前に、データをサーバに送ってUXを向上させるとか
A-4 LINE Platform Development Chronicle by Tom.T
スライド資料はこちら → LINE Platform Development Chronicle
- 2011年6月にリリース。開発期間は2ヶ月。初めは文字や絵文字を送れる程度で、スタンプはなし
- 最初は非常にシンプルな構成
- ポーリング→Pushの遅延、無駄なrequest-response
- long polling を行うために、ApacheをNginx+拡張モジュールに置き換えた
- セグフォ地獄から脱却するためにさらにErlangに置き換えた
- Monolithicをmicro serviceに置き換えることで、新しい人が入ってもすぐ開発できるようにした
- 組織図や会社をまたぐアドホックなチームを構成
- 短期間でイテレーションを回し、終わったら縮小または解散
- http://togetter.com/li/813977
ランチはおにぎりかサンドイッチを選べました。サンドイッチにすれば良
かったと後悔。
おにぎりには梅干しが入ることがあるという事実を忘れていた。。 #linedevday
— マスタカ (@masutaka) April 28, 2015
以下が午後。メモが少なくなってきました。
A-5 HBaseとRedisを使った100億超/日 メッセージを処理するLINEのストレージ by Shunsuke.N
スライド資料はこちら → HBaseとRedisを使った100億超/日メッセージを処理するLINEのストレージ
- RedisとHBaseはzookeeperで管理
- RedHand(Redis monitoring tool)
- データセンターも当然自前
- 監視ツールも自前なようで、Bootstrap的な画面が多かった
- http://togetter.com/li/814003
B-3 グローバルなネットワーク環境と複数OSに対応するためのLINE Game Client Platform 開発戦略 by Heejun.K
スライド資料はこちら → グローバルなネットワーク環境と複数OSに対応するための LINE Game Client Platform 開発戦略
- 事例が多かった
- 3G環境でのWarmUp処理。4Gとかで通信環境が良ければ問題ない
- http://togetter.com/li/814014
B-4 テレビ東京 meets LINE ビジネスコネクト by 佐藤暢晃
スライド資料はこちら → テレビ東京 meets LINE ビジネスコネクト
- 敢えてビジネスよりのセッションを選択。なかなか面白かった
- 佐藤暢晃さんは今回唯一のゲスト。テレビ東京コミュニケーションズの方
- 技術的な単語がポンポン出てきてやりおる..と思ったら、シニアマネージャー兼エンジニアとのこと
- オファーから放送まではたったの6週間
- 1100万/75minスタンプ
- テレビでの失敗はやり直しできないため、サーバを25台(?)とか準備したが、結果的に2台でも大丈夫だった
- 逆にLINE側の負荷が高く、スタンプの処理に5時間ほどかかった。これはLINEは初めての経験
- LINEビジネスコネクトのドキュメントは英語だけで、クローズドなAPIなので当然ググれもしなかった
- LINEビジネスコネクトは1リクエストに複数(30とか)含められるそう
- Serf: 100台でも2秒ほどで浸透
B-5 ビッグデータを活用するための分析プラットフォーム 〜データ集計した先に求められる分析技術〜 by Taiichi.H
スライド資料はこちら → ビッグデータを活用するための分析プラットフォーム 〜データ集計した先に求められる分析技術〜
- 集約、可視化、分析。自分も思っていたことを明言してくれた
- KPIが増えると忙しくなって見なくなるから、KPIを通知してくれるKPIモニタリングシステムを開発中
- そのKPIモニタリングシステムは異常があると通知。Spark + Kafkaで絶賛開発中。もう少しで運用開始
- http://togetter.com/li/814047
B-6 ベイズ推定とDeep Learningを使用したレコメンドエンジン開発 by Jun.N
スライド資料はこちら → ベイズ推定とDeep Learningを使用したレコメンドエンジン開発
- スタンプ多すぎてレコメンドできない問題を解決するお話
- 数式多め
- 実装はHiveとMongoDB
- アイテムの類似性を軸としたレコメンデーション
- コールドスタート問題(新規スタンプ、新規ユーザ)は画像の類似度に基づくレコメンデーションで解決
A-10 座談会 by スピーカーのみなさん
- ゆるゆるふわふわな座談会でした
途中思ったこと。舞台裏を知りたかった(野次馬根性です)。
そういえば今日はセキュリティのセッションはないのね。あれほど乗っ取りが問題になったけど最近聞かないので気になった #linedevday
— マスタカ (@masutaka) April 28, 2015
丸1日のイベントでしたが、運営がしっかりしていたせいか疲労感は少な
かったと思います。個人的には満足できたイベントでした。
追記(2015-05-17):
動画とスライド資料をこの記事にもマージしました。
LINE DEVELOPER DAY 2015 Tokyo 動画と資料を公開 « LINE Engineers’ Blog