設計

組織全体の技術的負債をAIで可視化するCIの構築

これはなに? こんにちは、DMM.comのミノ駆動です。 プラットフォーム開発本部コード品質チームにて、 プラットフォームの設計品質向上に取り組んでいます。 このたび、エンジニアリング組織全体の技術的負債をAIにより可視化する仕組みを構築しました。 こ…

レビューAI基盤の再構築 — クリーンアーキテクチャでAIワークフローを再定義する

はじめに ワークフローをインフラに委ねなかった理由 全体構造:クリーンアーキテクチャの適用 DDDでワークフローを表現する Value Object Rich Domain Model Domain Service (ワークフロー) ① 実行形態からの完全分離 ② Protocolによる依存性逆転 ③ Model…

レガシー脱却の現場で進める設計再構築とAIレビューの実践

はじめに レガシー課題の整理から始まった、持続可能な設計への再定義 共通の設計言語をつくる 設計標準の軸 迷わないルールが、設計を自由にする 設計標準をAIが読める形に アーキテクチャ審議会の立ち上げ:個別移行から全体最適へ 目的は正解の強制ではな…

DDD経験者がEvent Sourcingで躓いた話

DDD経験者がEvent Sourcingで躓いた話 はじめに 1. 背景 何が変わったのか(対比表) 2. 私が直面した2つの大きな違い 2-1. 大きな違い①:状態永続化モデル State Sourcing(従来の方法) Event Sourcing(今回の現場での方法) 私がつまずいたポイント Even…

続・決済基盤の技術的負債に向き合う

はじめに Phase1: 基盤構築から機能実装へ(2025年1月〜7月) やったこと わかったこと できたこと Phase2: 一般アカウント移行への挑戦(2025年8月〜2026年2月、進行中) 取り組んでいること これまでにわかったこと 今後の方針 技術的な学び Temporalによ…

DMM の Turtle Design System ポータルサイト β 版を公開しました

はじめに デザインシステムとは? これまでの歩み さらなる価値提供のためにチャレンジできないか? 最高のフロントエンドアプリケーションを最速で はじめに こんにちは!わたしたちは DMM.com の プラットフォーム開発本部 > Developer Productivity Group…

AI × Turtle で実現する Vibe Coding:DMM デザインシステムを活用した新たな開発ワークフロー

はじめに Turtle とは わたしたちのこれまでの取り組み AI-Turtle プロジェクトの誕生 Figma MCP サーバーを試す Turtle MCP サーバーを作る MCP サーバーの実装 ルールの作成 デザイントークンの処理 デザインデータは AI-friendly であるべき AI に考えさ…

10年来の年齢認証システムをモダナイズした話

はじめに 旧システムの課題 システム理解に向けた観測と整理 Datadog による運用状況の可視化 コードの精査と処理フローの再構築 ドキュメントの整備 技術選定 主な構成要素 Next.js、SSR(サーバーサイドレンダリング)の採用 Expressによるカスタムサーバ…

MVPパターンを採用したツール開発の効果

はじめに 開発したツールについて MVPパターンとは 導入背景 MVPを取り入れたことによる効果 ビューが増えた時の対応が容易である ロジック部分のテストが書きやすい 課題点 プレゼンターが肥大化しやすい MVPパターンに属さないクラスの置き場所が乱雑にな…

アプリケーション開発の設計のプロからレクチャーを受けてみたら開発生産性が向上した話

はじめに レクチャー前のチーム状況 レクチャー前のソースコードの状況 目標 やったこと 基本的な設計に関する学習 実務形式での設計 ユースケース図の作成 イベントストーミング ドメインモデリング 実装(モブプロ) レクチャーを受けての現在のチーム状況…

決済基盤の技術的負債に向き合う

最初に 決済基盤の技術的負債に向き合う DMMの決済基盤とは 広く、浅く、全体を俯瞰して見る やったこと わかったこと 外から見た決済基盤を知る やったこと わかったこと 決済基盤を取り巻く背景をコンテキストマップに書き出す やったこと わかったこと 機…

入社10ヶ月で行った Turtle デザインシステムの開発と関連する取り組み

はじめに 私のチーム 10ヶ月間での私の取り組みタイムライン Turtle とは Turtle の構成要素 デザイン原則 ガイドライン Turtle ライブラリ ドキュメント Turtle 開発で取り組んだこと デモサイト(リファレンスアプリ)の作成 デザイントークンの一元管理 …

「良いコードとは何か」で消耗するのはもうやめよう

これはなに? こんにちは、DMM.comのミノ駆動です。 プラットフォーム開発本部 Developer Productivity Group 横断チームにて、 プラットフォームの設計品質向上に取り組んでいます。 さて、ネット上ではソフトウェア開発における「良いコードとは何か」をめ…

新ヘルプセンターシステム#5 リプレイスにおけるはじめてのUX・UI改善

本記事では、未経験の元エンジニアがヘルプセンターシステムのリプレイスでUX・UI改善に携わった話として、改善事例とそこから得た学び・反省について紹介しています。 はじめに 改善事例について FAQサイトと問い合わせサイトの統合 FAQ記事の統一 ライティ…

新ヘルプセンターシステム#4 API開発初期段階での技術選定の振り返りと今後の展望

イントロダクション 開発対象のAPI 技術選定の内容 プログラミング言語(PHPからGoへのリライト) リンター/フォーマッター Webフレームワーク ORM マイグレーションツール デザインパターン/アーキテクチャ 良かった点 1. 学習コスト削減とオンボーディング…

Azure Active DirectoryとSCIMでプロビジョニングする時のTIPS

はじめに SCIMで連携中に気になった Azure Active Directory 関連の仕様 1. Patchでactiveがbooleanではなく文字列で返却されてしまうのはどうする? 2. SCIMのプロビジョニング間隔はどれくらい? 変更可能? 3. Azure Active Directory からのSCIMにIP制限を…

プロダクトにドメイン駆動設計を適用するために行った3つのこと

こんにちは! ペイメントサービス部 ポイントスクラムチームの北澤です。 普段はDMMポイントに関するシステムの開発や保守、ペイメントサービス全体を改善するための共通基盤の開発を行っています。 この記事では、DMMポイントの発行や消費などを行う電子マ…

DMM 百万長者を支える技術

はじめに DMM 百万長者ってどんなサービス? 技術をご紹介! アプリケーション クラウドプラットフォームなど フロントエンド 超快適な UX Headless CMS 静的ファイルの CDN 配信 静的ファイルのソース維持 バックエンド API AWS Step Functions データドリ…