Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
日経電子版 開発内製化の取り組み / nikkei web development 2015
Search
Yosuke
August 31, 2015
Technology
54
36k
日経電子版 開発内製化の取り組み / nikkei web development 2015
BPStudy#96 でお話した内容です。
Yosuke
August 31, 2015
Tweet
Share
More Decks by Yosuke
See All by Yosuke
ONA20 presentation: How Nikkei improves user retention through consultation
yosukesuzuki
1
320
How Nikkei improves user retention with new subscriber consultation
yosukesuzuki
0
380
創業140年の古い会社でデータの民主化を進めた話 / nikkei data driven 20180823
yosukesuzuki
17
24k
Google App Engine の日経での利用事例 / appengine at nikkei
yosukesuzuki
5
2.2k
Development and Infrastructure for Microservice Architecture
yosukesuzuki
0
970
PythonでもPythonじゃなくても使える汎用的なMicroservice実行環境 / nikkei microservice
yosukesuzuki
13
18k
5 years with Google App Engine
yosukesuzuki
2
1.8k
Other Decks in Technology
See All in Technology
Fanstaの1年を大解剖! 一人SREはどこまでできるのか!?
syossan27
2
160
NW-JAWS #14 re:Invent 2024(予選落ち含)で 発表された推しアップデートについて
nagisa53
0
250
LINEスキマニにおけるフロントエンド開発
lycorptech_jp
PRO
0
330
NilAway による静的解析で「10 億ドル」を節約する #kyotogo / Kyoto Go 56th
ytaka23
3
370
Snykで始めるセキュリティ担当者とSREと開発者が楽になる脆弱性対応 / Getting started with Snyk Vulnerability Response
yamaguchitk333
2
180
Amazon VPC Lattice 最新アップデート紹介 - PrivateLink も似たようなアップデートあったけど違いとは
bigmuramura
0
190
サーバレスアプリ開発者向けアップデートをキャッチアップしてきた #AWSreInvent #regrowth_fuk
drumnistnakano
0
190
サイバー攻撃を想定したセキュリティガイドライン 策定とASM及びCNAPPの活用方法
syoshie
3
1.2k
10個のフィルタをAXI4-Streamでつなげてみた
marsee101
0
160
株式会社ログラス − エンジニア向け会社説明資料 / Loglass Comapany Deck for Engineer
loglass2019
3
31k
サービスでLLMを採用したばっかりに振り回され続けたこの一年のあれやこれや
segavvy
2
360
C++26 エラー性動作
faithandbrave
2
670
Featured
See All Featured
RailsConf 2023
tenderlove
29
940
How to train your dragon (web standard)
notwaldorf
88
5.7k
How to Ace a Technical Interview
jacobian
276
23k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.1k
Designing for humans not robots
tammielis
250
25k
Thoughts on Productivity
jonyablonski
67
4.4k
Done Done
chrislema
181
16k
The Invisible Side of Design
smashingmag
298
50k
Why Our Code Smells
bkeepers
PRO
335
57k
Being A Developer After 40
akosma
87
590k
Typedesign – Prime Four
hannesfritz
40
2.4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Transcript
日経電子版 開発内製化の取り組み 2015/08/31 デジタル編成局 鈴木陽介
自己紹介 • 鈴木陽介 • 日本経済新聞社デジタル編成局 • 2001年入社 • NIKKEINETのコンテンツ運用、産業部記者、 ネット向けコラムの編集者などを経て、2009年
ごろから電子版の企画・開発 • Pythonを主に、JavaScript(Coffee)、Goなど を仕事・プライベートで。Pebbleでも遊んでいる www.nikkei.com | 日経電子版
アプリ内製化の話がバズりました • 特に新聞業界!の反響は大きかった www.nikkei.com | 日経電子版 s.nikkei.com/150609
日本経済新聞 www.nikkei.com | 日経電子版 • 1876年12月に中外物価 新報として創刊 • 2016年で140周年 •
1000人以上の記者・編集 者 ↑一般の人の日経のイメージ
日経電子版について • 40万人を超える有料会員 • 有料ニュースサービスで世界4位 • iPhone/Androidのモバイルサービスを強化 • サービス系の開発部隊は40人ぐらい www.nikkei.com
| 日経電子版
日経のシステム開発の歴史 • 1972年 世界初の新聞制作システムを開発 • 1984年 データベースサービス「日経テレコン」 開始 • 1996年
NIKKEINET開始 • 2010年 日経電子版創刊 www.nikkei.com | 日経電子版
NIKKEINET時代はけっこう内製してた • 英文記者出身の人がVBで作ったCMSがけっこ う使われていた • Perlでアクセスログ集計・解析ツールを開発 • ColdFusionでサービス用のサーバーアプリ ケーション ◦
PHPみたいなやつ。割とパフォーマンスが良かった → 属人的な開発体制ということもあり、徐々に外注 に変わっていった www.nikkei.com | 日経電子版
日経電子版の開発(創刊ごろまで) • 超大手SIerがたくさん入って開発 • 性能(レスポンス)はいい • 変更コスト増大 ◦ テストは基本手動、テストの工数で予算オーバーになっ て企画が実現できないことも
www.nikkei.com | 日経電子版
内製化への流れ • 2010年当時 • ちょっとしたことにも割と手間と時間とお金がかか る構造 • 企画を上げても実現されるのは少しのように思え る このままでいいのか?と素人的に思った
(色々理由があったけど、この時は知らず) www.nikkei.com | 日経電子版
ほぼ勝手に2人で開発を始めてみた • 最初はPHP+Ruby+MySQLで社内サーバー に作った ◦ 2010年の夏頃 ◦ 性能はイマイチ • PC版の一部のページを実装
◦ 1か月半ぐらい ◦ UIは変えてみた 結局このバージョンはお蔵入り。。 www.nikkei.com | 日経電子版
スマホブラウザー版(β)を開発 • お蔵入りしたバージョンは存 在意義がイマイチだった • 2011年当時スマホのブラウ ザー版がなかったのでそれを 作ってみることに • GAEを使ってインフラ含めて
2人だけで作った • HTML5の機能をてんこ盛り にしたエッジなサービスがで きた www.nikkei.com | 日経電子版
内製したサービスが正式版に • 2012年にWindows8アプリを内製 • 2013年にインフラ、フロントともに作り直したスマ ホブラウザー版(電子版モバイル)を公開 ◦ フロントのJavaScriptは当時の新人が内製した ◦ 今は別の新人が開発
• 請負型ではなく、常駐のSEさんが社内で開発す るスタイルも増えてきた • メインストリームじゃないけど、内製の雰囲気は 出てきた www.nikkei.com | 日経電子版
もっとモダンな開発がしたい! www.nikkei.com | 日経電子版 • 内製化をより進めたい • 2013年12月頃にnaoyaさんにと ある勉強会で技術顧問をお願いし たらOK!
• これでバリバリモダンな開発してい くぜ、と大船に乗ったような気持ち ではあった。。。
しかし、技術の問題じゃなかった www.nikkei.com | 日経電子版 • まず着手したのはチーム体制の変更 ◦ 目がつぶれそうなエクセルのアサイン表があった ◦ チームをまたいだ兼務を極力解消する
• 内製の範囲を絞る ◦ まずはフロントを中心に • カイゼンチームを作って恒常的に活動 • 情報共有する 僕に顧問をお願いしてくる会社、だい たいは技術の問題じゃないんですよ ね (rebuild.fm ep 105より)
技術の問題じゃなかった (2) www.nikkei.com | 日経電子版 • 打ち合わせのアジェンダを ちゃんと時間かけて作る • 打ち合わせの人数は絞る
• メンバーに自分事感が足りな い 等々、基本的なことでけっこう怒 られました。。。 内部にいると惰性になりやすい ことなのでありがたい
カイゼンチームの取り組んでいる課題 • 情報共有 • エンジニア採用 • GitHub & Pull Request導入
• デプロイ自動化 • 自動テスト www.nikkei.com | 日経電子版 内部で課題に取り組みつつ、都度テーマを決めて naoyaさんとディスカッション
コミュニケーションツールの導入 • Slack ◦ 社内外のメンバー含めて270人超のチーム • Qiita:Team ◦ 社内メンバー100人超が参加 ◦
会議で「Qiitaに書いてありましたが」と言われることも増 えてきた ◦ 累計1000投稿を突破! 最初はなかなか使ってもらえない → 粘り強く浸透させた 「日経電子版アプリ内製開発の舞台裏」( s.nikkei.com/150609 )に詳細 www.nikkei.com | 日経電子版
合宿を開始 • 3〜4か月に一度、合宿を開催 • ロードマップなどを共有 www.nikkei.com | 日経電子版
技術のほうも進んでいる • GitHub ◦ 内製を進めているチーム、フロントまわりのチームの移行 はほぼ完了 ◦ モバイルアプリ、インフラのAnsible Playbook、Django でのAPI開発はPull
Requestで開発 ◦ デザイナーもプルリクしている • CIと自動テスト ◦ GitHubへのpushでCircleCIと連動 ◦ モバイルアプリのユニット&e2eテスト ◦ インフラのserverspec実行 www.nikkei.com | 日経電子版
採用ブランディング • 勉強会で話す ◦ ↑イマココ ◦ iOSアプリの内製化の話 • 勉強会の会場ホスト ◦
Gocon ◦ Rebuild Meetup ◦ Ansible Meetup • ハッカソン ◦ クックパッドさんと共同開催 www.nikkei.com | 日経電子版
www.nikkei.com | 日経電子版 振り返って大事だったこと
• ビジョンをかかげ、そこに向かってチームを変革 する ◦ 特に古い組織は動きが遅いし、邪魔も入りやすい ◦ でも、みんな効率悪いことをやりたいと思っているわけで はない ◦ 熱意を持って、理想に向かってがんばる
• 考え方はいろいろ違う、繰り返し情報発信する ◦ Qiitaとかでいろいろ書くとちゃんと読んでくれる人もい る、建設的なコメントも多い ◦ 技術的にモダンとかも大事だけど、それをみんなのため にやることが大事 www.nikkei.com | 日経電子版 熱意とビジョン
• いつまでも考えているばかりでは進まない ◦ 他社事例とかは集めていてもそれだけでは進まない ◦ どうしたらできる?じゃなくてやる • まずは手を動かして実績を作ることも重要 ◦ ものを作って内製できることを証明した
◦ 2人いれば割とできる ◦ コードは汚くてもまずはできることを見せる ▪ 社内体制として内製できるようになってコードレビュー を導入 • あんまり細かい事情を知らないからこそ、できる こともある www.nikkei.com | 日経電子版 とにかくやる
• 目的と手段は逆転しがち • PDCAサイクルを高速に回すことができるのが内 製の強み ◦ 外部に発注しているとこれが難しい ◦ 仕様検討→見積もり→発注手続き等々 ◦
ユーザーからの意見がダイレクトに来るフロントの内製化 を優先 • 社内にノウハウが残る • 取引コストを下げる ◦ 無駄な打ち合わせを減らす ◦ 昼間の打ち合わせが終わってようやく夕方から作業・・・ みたいのをなくす www.nikkei.com | 日経電子版 なぜ内製するかきちんと説明する(できる)
• ノウハウがないのに自力で全部は無理 ◦ でも、まるっと外注だと社員にノウハウが残らない • naoyaさん「外部の人の意見は聞いてくれる」( rebuild.fm ep 105より) ◦
実際、的を得ている意見ばかりだし、自分たちが無意識 的にやってしまっていたことを修正できる • UIや技術についても ◦ アプリのUIについてはfladdictさん ◦ Pythonの開発については hirokikyさん ◦ その他、過去にもいくつかメンター役を呼んでいる www.nikkei.com | 日経電子版 メンターを呼ぶ
• フロントからやる ◦ 特にモバイル系 • 新しいところからやる ◦ 新API群 • 作りなおすところからやる
◦ インフラのAWS移行時にAnsibleを導入 • 採用を強化 ◦ 内製化にはやはり優秀なエンジニアが必要 ◦ エンジニア向けのブランドイメージを改善する • 上層部とイメージを共有 www.nikkei.com | 日経電子版 とは言っても、まだ道半ば
日経電子版(日経本社)は エンジニアを採用中 気楽に社内見学でもOK!
[email protected]
まで 学生の方は hack.nikkei.com からインターンに 応募してください www.nikkei.com
| 日経電子版 www.nikkei.com | 日経電子版
www.nikkei.com | 日経電子版 日経電子版チームのいいところは? 雰囲気がゆるいところ 技術に詳しい人を呼んで指 導を受けることができる 2年目 大企業でありながらWEB ベンチャーのような開発が
できます 新人 元アルバイト