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
自社製CMSからmicroCMSへのリプレースがプロダクトグロースを加速させた話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
nextbeat-engineer
August 26, 2025
Technology
0
760
自社製CMSからmicroCMSへのリプレースがプロダクトグロースを加速させた話
microCMS Meetup 2025のSESSION1「microCMS ユーザーLT - 3つの実践に学ぶ、microCMS導入と運用のヒント」におけるLT資料
nextbeat-engineer
August 26, 2025
Tweet
Share
More Decks by nextbeat-engineer
See All by nextbeat-engineer
開発組織全員が自ら学んで成長していく組織づくり
nextbeatdev
10
4.6k
JavaScript で作成したモバイルアプリケーションから Auth0 の iOS・Android SDK を利用する Capacitor プラグインのご紹介/nextbeattechbar-20231116
nextbeatdev
0
130
社内の共通フレームワークをScala 3移行するまで/NextbeatTechBar-20230421-1
nextbeatdev
0
390
tapirのようなものをScala3 x JDBCで作りたい/NextbeatTechBar-20230421-2
nextbeatdev
0
280
プログラミング言語Scalaの歴史と概要/NextbeatTechBar-20230421-3
nextbeatdev
1
270
ネイティブアプリもSvelteで作りたい/NextbeatTechBar-20221215-1
nextbeatdev
1
500
【Svelte】プロダクトで採用しているテストフレームワークについて/NextbeatTechBar-20221027-1
nextbeatdev
0
320
SvelteKit・Svelte でハマった(困った)ところ/nextbeattechbar-20221027-2
nextbeatdev
0
320
Other Decks in Technology
See All in Technology
Phase06_ClaudeCode実践
overflowinc
0
2k
TUNA Camp 2026 京都Stage ヒューリスティックアルゴリズム入門
terryu16
0
440
開発チームとQAエンジニアの新しい協業モデル -年末調整開発チームで実践する【QAリード施策】-
kaomi_wombat
0
240
BFCacheを活用して無限スクロールのUX を改善した話
apple_yagi
0
120
AIエージェント時代に必要な オペレーションマネージャーのロールとは
kentarofujii
0
110
MCPで決済に楽にする
mu7889yoon
0
110
Navigation APIと見るSvelteKitのWeb標準志向
yamanoku
2
110
君はジョシュアツリーを知っているか?名前をつけて事象を正しく認識しよう / Do you know Joshua Tree?
ykanoh
4
130
イベントで大活躍する電子ペーパー名札を作る(その2) 〜 M5PaperとM5PaperS3 〜 / IoTLT @ JLCPCB オープンハードカンファレンス
you
PRO
0
210
開発チームとQAエンジニアの新しい協業モデル -年末調整開発チームで実践する【QAリード施策】-
qa
0
300
LLMに何を任せ、何を任せないか
cap120
10
5.6k
Phase01_AI座学_基礎
overflowinc
0
4k
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
The browser strikes back
jonoalderson
0
840
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
170
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
220
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
160
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
180
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
10k
Making Projects Easy
brettharned
120
6.6k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
490
Are puppies a ranking factor?
jonoalderson
1
3.2k
Transcript
自社製CMSからmicroCMSへの リプレースがプロダクトグロースを 加速させた話 株式会社ネクストビート 執行役員 CPO 川井淳矢 2025年8月22日 microCMS Meetup
2025 SESSION1 「microCMS ユーザーLT - 3つの実践に学ぶ、microCMS導入と運用のヒント」
Copyright © nextbeat All Rights Reserved. 2 microCMSユーザーLTのテーマ microCMS導入と運用のヒント
Copyright © nextbeat All Rights Reserved. 3 microCMSユーザーLTのテーマ 自社製CMSから microCMSへのリプレース
Copyright © nextbeat All Rights Reserved. 自己紹介 4 株式会社ネクストビート Product
& Marketing Division 執行役員CPO (Chief Product Officer) エンジニア 8年半 microCMS 2年半 CPO & PdM 1年半 X: @_jk_nb SNS 部署 経歴 所属 役割 川井淳矢 名前
Copyright © nextbeat All Rights Reserved. 5 • リプレースの対象プロダクト、背景 •
苦労したこと、工夫したこと • リプレース後の変化 アジェンダ
Copyright © nextbeat All Rights Reserved. 6 • リプレースの対象プロダクト、背景 •
苦労したこと、工夫したこと • リプレース後の変化 アジェンダ
Copyright © nextbeat All Rights Reserved. 7 対象プロダクト
Copyright © nextbeat All Rights Reserved. 8 対象プロダクト • KIDSNA
STYLE (子育て情報メディア ) • コンテンツのボリューム的には 約2万本の記事、ニュース、動画等を掲載
Copyright © nextbeat All Rights Reserved. • いわゆる技術負債を解消したかった ◦ 言語、フレームワークもフルリアーキテクチャ
◦ 自社製のCMSもスコープに ▪ CMSをリッチに作り込んだ結果... • 新規開発、保守運用コストが増加 • コードが荒れてグロースが遅れる ◦ 納期は半年、パフォーマンス/機能劣化はNG 9 リプレースの背景
Copyright © nextbeat All Rights Reserved. 移行の流れ 10 01 02
03 04 検証・修正 05 リリース 01〜04を何回か繰り返し、なんとか半年で完了 データの棚卸し 不要モデル削減 microCMS の設計 データ移行 アプリ開発
Copyright © nextbeat All Rights Reserved. • 苦労したこと、工夫したこと ◦ データマイグレーション、S3連携
◦ 表示速度の課題と高速化 ◦ 便利なSDK開発 11 アジェンダ
Copyright © nextbeat All Rights Reserved. • 苦労したこと、工夫したこと ◦ データマイグレーション、S3連携
◦ 表示速度の課題と高速化 ◦ 便利なSDK開発 12 アジェンダ
Copyright © nextbeat All Rights Reserved. • microCMSのPUT APIを利用 ◦
全データを移行するスクリプトを作成 ▪ DB → json → microCMS • WriteAPIのRateLimitに注意 • 画像や動画はAWSのS3に格納していた ◦ 当時はAPIでメディアをアップできなかった ◦ そのままS3で運用する方針にした 13 データマイグレーション
Copyright © nextbeat All Rights Reserved. 14 • 拡張フィールドを活用して microCMSからS3に画像アップロードす
る機能を開発した • S3にファイルをアップするアプリを作成 し、URLアクセスできるようにホスティン グ • 画像アップロード後、iframe経由で、画 像アクセスに必要な情報を取得し microCMSに渡して保存 S3とmicroCMSの連携
Copyright © nextbeat All Rights Reserved. • ライターの体験を損なわないように トンマナをmicroCMSに合わせている トリミング
アップロード済みの画像の参照 なども可能 多分ライターさんには デフォルト機能だと思われている 15 S3とmicroCMSの連携
Copyright © nextbeat All Rights Reserved. • 苦労したこと、工夫したこと ◦ データマイグレーション、S3連携
◦ 表示速度の課題と高速化 ◦ 便利なSDK開発 16 アジェンダ
Copyright © nextbeat All Rights Reserved. • KIDSNA STYLEの仕様上の課題 ◦
コンテンツ参照の階層(depth)が深い ◦ コンテンツの量が多い ▪ depth=3でコンテンツ量が多いと データ取得時間が長くなる ◦ できるだけ表示速度は早くしたい ▪ なんとか高速化を...要件的にSSRで... 17 表示速度の課題
Copyright © nextbeat All Rights Reserved. • メインコンテンツはdepth=0 or 1で取得
• カテゴリ、出演者、タグ、などの参照コンテンツを全件取 得してBFFでキャッシュする • BFFで記事と参照コンテンツをjoinする • 早ければ0.5s、遅くても1s弱くらいで 画面表示が可能になった 18 高速化
Copyright © nextbeat All Rights Reserved. • 苦労したこと、工夫したこと ◦ データマイグレーション、S3連携
◦ 表示速度の課題と高速化 ◦ 便利なSDK開発 19 アジェンダ
Copyright © nextbeat All Rights Reserved. • stringで複雑なfilter条件を書くのはちょっと怖い ◦ 型安全な関数を自作
20 便利なSDK開発
Copyright © nextbeat All Rights Reserved. • 各フィルターを関数化 • and/orで簡単に条件を繋げるように
21 便利なSDK開発
Copyright © nextbeat All Rights Reserved. 22 • リプレースの対象プロダクト、背景 •
苦労したこと、工夫したこと • リプレース後の変化 アジェンダ
Copyright © nextbeat All Rights Reserved. • コンテンツ管理ではなく機能開発に集中できるように なった ◦
CMSの改修、メンテコストが発生しないのが こんなにも快適だとは思わなかった... • 新人のキャッチアップコストも大きく下がった ◦ 改修前:誰も触りたくない... ◦ 改修後:作りやすいですね! 23 リプレース後の変化
Copyright © nextbeat All Rights Reserved. 24 開発ロードマップに ユーザーインサイトをしっかりと 反映いただいている!
どんどん移行しやすい 環境が整ってきている 多分そのうち移行スクリプトとか 不要になる...かも... 思い立ったら移行しよう! おまけ microCMSの進化
Copyright © nextbeat All Rights Reserved. 25 2 5 ご静聴ありがとうございました