-
-
Save penguinco/a2f9fbe4f47d152140b1 to your computer and use it in GitHub Desktop.
講演メモ
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
freakout | |
(バナー広告の現在について紹介) | |
DSP | |
URLとcookieを見て分析して、 | |
男性女性何歳 生活習慣興味関心、どんな広告がベスト? | |
いくらで入札するのが一番なんだろうか? | |
を判断、100msでの入札RTB | |
会社の成長について | |
創業から3年半 | |
エンジニア:社長1->25人 | |
オフィス:2段ベッド → 世界 | |
今は、入札リクエスト数 2200億/月 | |
事業成長を加速させるために必要なこと | |
・テクノロジー x 業務知識 x データサイエンス | |
テクノロジー: | |
50ms | |
必要な枠必要な人必要な瞬間だけリアルタイムで買うには? | |
FreakOut DSP | |
入札サーバー/hadoopクラスタ | |
それぞれ数百台くらいの規模 | |
基本はオンプレ。AWSは一部 | |
入札サーバーは安いコアを並べる | |
入札の判断には必要なKVS | |
十億ブラウザの性別など属性を持つ。 | |
CAP定理のAP, とread/writeパフォーマンスが必須 | |
tech stack : fluentd, hbase, es, hadoop , hive, perl, kibana | |
業務知識: | |
アドテク。広告の領域において、複数の企業が相互にシステム接続して成り立つ生態系。 | |
生態系を理解することが、業務理解への近道 | |
早期の段階(創業一年後)から、業務オペレーションを全てAPI化する | |
パートナーへ開放 | |
プロダクト的なメリット | |
・クライアントやパートナーの要求に柔軟に対応 | |
・プラットフォーマーとして市場を提供する側へ | |
エンジニアリングのメリット | |
・抽象化する意識の高まり | |
・深まる業務知識 | |
ドッグフードを食べる | |
FreakOut 管理画面もAPIクライアントの一つ | |
FreakOut 上に、エンジニアがユニークなアプリケーションをどんどん開発(天気連動入札) | |
APIを使って社内ハッカソンができる。 | |
データサイエンス: | |
・PDCAサイクルを高速化するプロジェクト体制とは? | |
・データサイエンティスト | |
・エンジニア | |
・プロダクトマネージャー | |
・経営企画 | |
・CTO/CEO | |
↑のメンバーでチームを組んで、プロジェクトを回す | |
さらに、共通言語を持つ(CPC 回帰分析 検定 Hive 機械学習) | |
ロジックのスプリットランテスト | |
2200億インプレッションを7つのロジックを並列でテスト。 | |
数時間で成績が見える(可視化) | |
CTR・CVRを見比べる画面のデモ | |
フリークアウトのCTR予想モデル(例) | |
Hivemall ロジスティック回帰(正則化なし) | |
最適化はSGD | |
ログは直近3日分30GBで実行時間は一時間 | |
→数時間で結果が見える。手元でやるよりよい。 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
浜本階生 | |
プログラミング歴20年 | |
2007年頃から個人で色々作るのがたのしくなってくる | |
会社をやめて個人サービスを開発する方に100%コミット | |
Blogopolisは注目された | |
2010年から基盤技術を開発開始、 | |
ニュース配信への応用を発案 | |
crowsnestを2012年ごろまでにリリース | |
2013年 アプリへピボット | |
2013年 400万DL | |
2014年から本格的に開発していく感じだと表現 | |
人数が急激に増えてくるフェーズ | |
tech stack jenkins data dog newrelic munin fabric chef | |
しかし、技術環境は重要だが、表層 | |
その下には | |
・技術環境、(CI モニタリング、テスト自動化) | |
・チーム環境、(朝会、雑談、オフィス) | |
・開発思想(ビジョン、哲学) | |
がある | |
開発思想: | |
・プロダクト中心主義 | |
・細部へのこだわり | |
・職人気質(かたぎ) | |
全社員でSFでクレイグリストを使ってスマフォユーザーをオフィスに招いてユーザーテスト | |
風景:https://www.dropbox.com/s/jiyv3ona71i1dwn/2014-08-23%2014.39.13.jpg | |
入社した人は5回ユーザーテストに参加するというルールがある(いい!) | |
形態素解析による折り返し: | |
合理性を超えた細部へのこだわりが重要だと考えている(哲学) | |
チーム環境: | |
・オフィス | |
チームコラボレーションが発生しやすいように作っている | |
・雑談文化 | |
なるべく会議をしない、会議室を使わない、雑談する | |
→必要なときに、必要な人で、必要なことだけを話せる、合議制に陥らない。 | |
・フリースペース | |
・ホワイトボード | |
→とにかく書く(いい!) | |
Clonfluenceを使っていた→重い | |
Qiita:Teamに乗り換え → 投稿激増 | |
ツールの選定重要 | |
まとめ: | |
思想チーム環境を大事に守りつつ、技術環境の改善を続けて開発体制を充実させていく |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
メルカリ開発の歴史 | |
アジェンダ: | |
・メルカリはどんなアプリ? | |
・どんなチームで開発している? | |
・大事なことはスピード | |
・メルカリ | |
毎日10万出品 | |
月次流通10億円以上 | |
開発チーム: | |
・2013年1月に誕生(7月にリリース) | |
・クライアント:1人 | |
・サーバ:2人 | |
・フルタイム開発者は1人 | |
今 | |
android 2 | |
iOS 2 | |
server 7 | |
(US版の開発も開始) | |
ゴール100なら今は1 | |
これまでは0->1の段階 | |
開発者の役割、開発の考え方は成長段階によって変わる。 | |
・大事なこと | |
使ってもらって価値を高める | |
スピードを出す方法(教訓): | |
1. 迷ったら単純な方を選ぶ(高機能だけど複雑なもの vs 低機能だけど単純なもの|chef vs ansible) | |
低機能だけど単純なものは習得がしやすく成果が出やすい | |
半年一年先よりも今のメリットが大事 | |
2. 60%でリリース(いつか使われるかもしれないコードを今準備してもだいたい使われない) | |
いつまでたっても終わらない、UIデザインもよくある話、ユーザーの反応を見て決める | |
Done is better than perfect. | |
3. 最も重要な事にフォーカスする | |
メルカリの場合、ホーム画面に表示される商品の一覧、出品・購入の操作にフォーカス | |
アプリ公開を急ぐために、盛り込む機能を限界まで絞った(APIの数 95->171) | |
アプリ公開時は物理のさくらのサーバー1台に高性能サーバーに全部つっこんだ | |
これによる準備時間の削減は堅牢なインフラを先に準備するより価値があった。 | |
これから | |
1->10 | |
これまでうまくいく考え方も一旦リセットして、 | |
個人の力をチームにすることが重要 | |
課題: | |
グローバルの開発体制 | |
1000万ユーザー規模のスケールアウト設計 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment