カクヨムの10年を見据えた技術 Hatena Engineer Seminar #19
by
koudenpa
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Hatena Engineer Seminar #19 id: カクヨムの10年を 見据えた技術 2022.03.30 koudenpa
Slide 2
Slide 2 text
● 本日のテーマ ● 本セッションのテーマ ● カクヨムとはてな ● 一番いい技術 ● エンジニアリングロードマップ 目次
Slide 3
Slide 3 text
本日のテーマ
Slide 4
Slide 4 text
● 本日はカクヨム編 カクヨムの10年を見据えた技術
Slide 5
Slide 5 text
前提として……
Slide 6
Slide 6 text
● https://kakuyomu.jp/ ● Web小説サイト ● 小説を「書く」 ● 小説を「読む」 ● 面白いを伝える カクヨムとは?
Slide 7
Slide 7 text
カクヨムは成長中 ● 2021年のアクセス数 ○ Mackerelで収集 ○ https://mackerel.io/ ● 増加傾向
Slide 8
Slide 8 text
6年目に 10年を見る
Slide 9
Slide 9 text
● 2015年 プレオープン ● 2016年 正式オープン・スマホアプリリリース ● 2018年 縦組み・スマホアプリリニューアル ● 2019年 カクヨムロイヤルティプログラム ● 2022年 カクヨムサポーターズパスポート ● …… ● 2026年 10年目 カクヨムの歴史
Slide 10
Slide 10 text
ではなく
Slide 11
Slide 11 text
● 2015年 IaaS・Perl・テンプレートエンジン・jQuery ● 2016年 ネイティブアプリ・REST API ● 2018年 React Native・GraphQL API ● 2021年 マネージド化・コンテナ化・React・Next.js ● …… ● 2026年 10年目 カクヨムの10年を見据えた『技術』
Slide 12
Slide 12 text
● 2015年 IaaS・Perl・テンプレートエンジン・jQuery ● 2016年 ネイティブアプリ・REST API ● 2018年 React Native・GraphQL API ● 2021年 マネージド化・コンテナ化・React・Next.js ● …… ● 2026年 10年目 カクヨムの10年を見据えた『技術』
Slide 13
Slide 13 text
本セッションのテーマ
Slide 14
Slide 14 text
● インフラ ○ AWSアカウントとIaaSの段階的移行 ● チーム ○ グルーミングしながら進めるプロダクト開発 ● アプリケーション ○ プロトタイプ編 ○ フロントエンド編 ○ デザイン編 この後のセッション
Slide 15
Slide 15 text
● インフラ ○ AWSアカウントとIaaSの段階的移行 ● チーム ○ グルーミングしながら進めるプロダクト開発 ● アプリケーション ○ プロトタイプ編 ○ フロントエンド編 ○ デザイン編 ● ↑これらをやるに至るまでの背景 この後のセッションに至る背景
Slide 16
Slide 16 text
カクヨムとはてな
Slide 17
Slide 17 text
● 共同開発 ○ 株式会社KADOKAWA ○ 株式会社はてな ● はてなの仕事 ○ 機能開発 ○ システム運用 カクヨムとはてな
Slide 18
Slide 18 text
● 文字通りの機能開発 ○ 新機能 ○ 既存機能改修 カクヨムの開発
Slide 19
Slide 19 text
● 戦略的な追加機能 ○ カクヨムロイヤルティプログラム ○ カクヨムサポーターズパスポート ● 継続的なカイゼン ○ 中小規模の追加機能・改修 ○ 運営用機能 ● 変わり種 ○ おねだり企画 ○ https://kakuyomu.jp/special/entry/4th_anniversary#menu5 開発の種類
Slide 20
Slide 20 text
● アーキテクチャ ● プログラミング言語 ● フレームワーク ● etc…… 開発『技術』
Slide 21
Slide 21 text
● 開発した機能の反映 ● 安定したサービス提供 カクヨムの運用
Slide 22
Slide 22 text
● ホスティングプロバイダ ● ホスティング環境 ● デリバリー手法 ● etc…… 運用『技術』
Slide 23
Slide 23 text
● 開発・運用それぞれ ● 一番いい形態で 仕事の形態
Slide 24
Slide 24 text
一番いい技術
Slide 25
Slide 25 text
● 答えはない 一番いい?
Slide 26
Slide 26 text
● 時代 ○ 進んでいく ● 開発・運用対象 ○ 典型的なWebアプリケーション ○ 成長中 ● 担当者 ○ はてなの担当者 ● プロダクトの状況 ○ 変化する 今はこれがいい
Slide 27
Slide 27 text
● オンプレミス->クラウド ○ IaaS活用 ● はてなのインフラ ○ 単一ネットワーク上の開発運用支援環境・ツール ○ Chefレシピ ○ 社内PaaS的な運用の工夫 ● はてなのエンジニア ○ Perl+テンプレートエンジン ○ はてなのインフラに乗る ● プロダクトの状況 ○ 先行する競合サービスを追う後発サービス カクヨム開発着手時
Slide 28
Slide 28 text
● クラウドネイティブ ○ マネージドサービス ● コンテナ活用 ○ 開発と運用のしやすさ ● 適切な責務分担 ○ バックエンドとフロントエンド ● プロダクトの状況 ○ 多くの読者・作者が利用 ○ アニメ化作品を含むヒット作が生まれ続けている ○ 作者にとっては直接的な収益源 今
Slide 29
Slide 29 text
● 分からない ○ ある程度の予測はできるが…… ● 対応は必要 ○ サービスは成長中なので ● プロダクトの状況・カクヨムの今後 ○ 乞うご期待 未来
Slide 30
Slide 30 text
● 変化しやすくする ○ 今に適応 ○ 未来への適応準備 未来を見据える
Slide 31
Slide 31 text
エンジニアリング ロードマップ
Slide 32
Slide 32 text
● 話した内容 ○ 結論 ○ 取り組んでいること ● どのようにそうなったか ● ロードマップを引いたか 一番いい技術
Slide 33
Slide 33 text
● エンジニアのみで集まってブレスト ○ どうなっていたいか? ○ 無責任に話す ● 無責任だと大小色々出てくる ○ ちょっとこれやってみたい ○ この部分気に入らない ○ 小さいことから話題が広がる ● 実にブレスト ネタの収集
Slide 34
Slide 34 text
● 小さいもの ○ タスクにして気が向いたら処理 ● 大きいもの ○ 整理してチームの会議体にもっていく ● 漏れたもの ○ 忘れる ○ 大事ならまた話題になる ■ 整理の重圧が下がる 収集後
Slide 35
Slide 35 text
● 定期的にエンジニアリング観点の話をする場を設けている ● 整理したネタを持ち込む ○ ドラフト版エンジニアリングロードマップ ● 期の節目でチームのロードマップにする チームの会議体
Slide 36
Slide 36 text
● 目的 ○ 継続的な開発運用 ● 手段 ○ インフラの更新 ○ フロントエンドとバックエンドの分離 ■ その後言語や要素技術更新 エンジニア観点
Slide 37
Slide 37 text
● 目的 ○ 変化の多い業界で成長を続ける ● 手段 ○ 未来を見据えた機能追加や状況に応じた改善を止めない プロダクト観点
Slide 38
Slide 38 text
観点を統合 エンジニア 観点 プロダクト 観点
Slide 39
Slide 39 text
エンジニアリングロードマップ ※タイムスケールなどは掲載の便宜上デフォルメされています
Slide 40
Slide 40 text
並行して進めた ※タイムスケールなどは掲載の便宜上デフォルメされています
Slide 41
Slide 41 text
今ここまで歩んだ ※タイムスケールなどは掲載の便宜上デフォルメされています
Slide 42
Slide 42 text
俺たちの戦いはこれからだ ※タイムスケールなどは掲載の便宜上デフォルメされています
Slide 43
Slide 43 text
──完── この後のセッションに ご期待ください