ピックアップ記事

62 件の記事

JOSEとは?JWT・JWS・JWE・JWK・JWAの全体像と安全な使い方
アプリケーション 2026-07-08

JOSEとは?JWT・JWS・JWE・JWK・JWAの全体像と安全な使い方

JOSE(JWT/JWS/JWE/JWK/JWA)の全体像を解説する。JWTとJWSの違い、署名の3パートと暗号化の5パートの構造、alg混同やnone攻撃を防ぐJWT BCP(RFC 8725)まで整理する。

#JWT#JOSE#認証
OAuth 2.1とは?OAuth 2.0からの変更点とSecurity BCP(RFC 9700)
アプリケーション 2026-07-09

OAuth 2.1とは?OAuth 2.0からの変更点とSecurity BCP(RFC 9700)

OAuth 2.0から2.1への変更点と、RFC 9700 Security BCP・RFC 6819 脅威モデルが示すセキュリティ対策を整理する。PKCE必須・Implicit非推奨・Mix-Up対策など、現在のOAuthで守るべき点をまとめる。

#OAuth#認可
OpenID ConnectのDiscoveryとメタデータとは?自動設定と鍵取得の仕組み
アプリケーション 2026-07-10

OpenID ConnectのDiscoveryとメタデータとは?自動設定と鍵取得の仕組み

OpenID ConnectのID Tokenの役割と、Discovery(OpenID Connect Discovery / RFC 8414 AS Metadata)による自動設定・公開鍵取得の仕組みを解説する。jwks_uriによる鍵ローテーションまで整理する。

#OpenIDConnect#OAuth
アクセストークンの検証と失効とは?Introspection・JWT AT・Revocation
アプリケーション 2026-07-11

アクセストークンの検証と失効とは?Introspection・JWT AT・Revocation

アクセストークンの2方式(opaque + Introspection / JWTアクセストークン)の検証方法と、Token Revocationによる失効を比較する。RFC 7662・RFC 9068・RFC 7009を整理する。

#OAuth#認可
OIDCのログアウトとSecurity Event Token(SET)とは?
アプリケーション 2026-07-12

OIDCのログアウトとSecurity Event Token(SET)とは?

OpenID ConnectのFront-Channel LogoutとBack-Channel Logout、そしてSecurity Event Token(RFC 8417 SET)によるセッション失効・イベント通知の仕組みを解説する。

#OpenIDConnect#認証
動的クライアント登録(DCR)とは?RFC 7591・7592入門
アプリケーション 2026-07-13

動的クライアント登録(DCR)とは?RFC 7591・7592入門

OAuthクライアントをAPIで動的に登録・管理するDynamic Client Registration(RFC 7591)とClient Management(RFC 7592)を解説する。登録エンドポイント、registration access token、セキュリティ考慮まで整理する。

#OAuth
送信者制約トークンとは?mTLS(RFC 8705)とDPoP(RFC 9449)入門
アプリケーション 2026-07-14

送信者制約トークンとは?mTLS(RFC 8705)とDPoP(RFC 9449)入門

bearerトークンの弱点を塞ぐ送信者制約(Sender-Constrained Token)を解説する。mTLS(RFC 8705)とDPoP(RFC 9449)でトークンを送信者に束縛する仕組み、audを絞るResource Indicators(RFC 8707)まで整理する。

#OAuth#認可
サービス間認証の全体像とは?mTLS・Token Exchange・SPIFFE・ゼロトラスト
アーキテクチャ 2026-07-15

サービス間認証の全体像とは?mTLS・Token Exchange・SPIFFE・ゼロトラスト

マイクロサービス間の認証を「ネットワーク層/トークン層/アイデンティティ基盤」の3レイヤで整理する。mTLS・Token Exchange(RFC 8693)・SPIFFE・ゼロトラスト(NIST SP 800-207)・BeyondProdまで解説する。

#認証#マイクロサービス#セキュリティ
SPAのトークンをどこに置く?BFF+セッションで守る認証構成
アーキテクチャ 2026-07-16

SPAのトークンをどこに置く?BFF+セッションで守る認証構成

SPAでアクセストークンをどこに保存するか(localStorageの危険性)、BFF+セッションでトークンをブラウザに渡さない構成、そして最初はトークンレスで十分な理由を解説する。

#BFF#認証#セキュリティ
システム思考で読むプラットフォームエンジニアリング
ビジネス 2026-06-29

システム思考で読むプラットフォームエンジニアリング

プラットフォームエンジニアリングとシステム思考には親和性があるのではないか。その直感を言葉に落とすために、ストック・フロー・遅延・原型・レバレッジポイントという語彙で、プラットフォームの振る舞いと陥りやすい失敗の構造を読み直してみる。

#プラットフォーム・エンジニアリング#システム思考
システム思考の基本 ―世界をストックとフィードバックで捉える
ビジネス 2026-06-29

システム思考の基本 ―世界をストックとフィードバックで捉える

ドネラ・メドウズ『世界はシステムで動く』を土台に、ストック・フロー・フィードバックループ・レバレッジポイントといったシステム思考の中心概念を一般向けに整理する。

#システム思考
偶有的複雑性と意思決定の記録不在
アーキテクチャ 2026-05-21

偶有的複雑性と意思決定の記録不在

偶有的複雑性が生まれる要因と、ADRやDesign Docがないと「本質」と「偶有」を切り分けられなくなる話

#設計#Architecture Decision Record#Design Docs
分散トランザクションの代表的3パターン — 2PC・Saga・Outbox
アーキテクチャ 2026-05-13

分散トランザクションの代表的3パターン — 2PC・Saga・Outbox

マイクロサービスにおける分散トランザクション設計の代表的パターン、2PC・Saga・Outboxを比較し、それぞれの仕組み・長所短所・使い分けを整理する。

#マイクロサービス#分散トランザクション#2phase commit#Sagaパターン#Outboxパターン
アーキテクチャ設計における共通化の罠
アーキテクチャ 2026-04-23

アーキテクチャ設計における共通化の罠

アーキテクチャ設計における共通化の罠 — 技術的関心事とドメインロジックの違い

#設計#DDD
プラットフォームの成立条件
アーキテクチャ 2026-04-19

プラットフォームの成立条件

社内でプラットフォームを作るべきかどうかをどう判断するか。コア/支援/汎用サブドメインの区別、外部サービスとの比較、レバレッジ、体制などの観点から整理し、ドメイン分析でどこまで判定できるかを考える。

#アーキテクチャ#プラットフォーム・エンジニアリング#DDD
プロダクト開発とプラットフォーム開発は何が違うのか
アーキテクチャ 2026-04-06

プロダクト開発とプラットフォーム開発は何が違うのか

「なぜ小さくリリースして検証しないのか」——プラットフォーム開発の意思決定に向き合うとき、この問いと頻繁に対峙する。判断基準・設計思想・投資観点の3つの観点から両者の違いを整理する。

#アーキテクチャ#チームトポロジー#プラットフォーム・エンジニアリング#組織設計
エンジニアリングマネジメントを"デッキ"として設計する
マネジメント 2026-08-13

エンジニアリングマネジメントを"デッキ"として設計する

1on1やOKR、レビュールールといったマネジメント施策を寄せ集めにしない。判断の質と再現性を軸に、一つの体系(デッキ)として設計する考え方と、施策が成果に変わる条件を紹介する。

#エンジニアリングマネジメント#チームマネジメント#組織論
bmf-tech.comの gobel → gohan 移行記—完全静的サイト化の流れ
アーキテクチャ 2026-03-20

bmf-tech.comの gobel → gohan 移行記—完全静的サイト化の流れ

自作ヘッドレスCMS(gobel)+ MySQL + Vue.js構成から、gohanによる完全静的サイトへ移行しCloudflare Pagesでホスティングするまでの全工程。700件超の記事、英語スラッグ生成、画像移行、リダイレクト、Go製プリフライトチェッカーまで。

#gohan#Migration#SSG#Golang
AI時代のエンジニアリングについて考える
アーキテクチャ 2026-02-25

AI時代のエンジニアリングについて考える

AI時代のエンジニアリングを考察。Golden Datasetによる検証、LLM-as-Judge評価、プロンプトインジェクション対策といったプロンプトガバナンスを紹介します。

#LLM as Judge#Prompt as Code#Prompt Ops#コンテキストエンジニアリング#プロンプトエンジニアリング#Continuous AI
GitHub Agentic Workflowを使ったLLMプロンプト管理・評価基盤
アーキテクチャ 2026-02-25

GitHub Agentic Workflowを使ったLLMプロンプト管理・評価基盤

GitHub Agentic Workflowを使い、LLMプロンプトをコードとして管理する基盤を解説。Copilotによる自動化、golden dataset、評価の仕組みを紹介します。

#LLM as Judge#Prompt as Code#Prompt Ops#コンテキストエンジニアリング#プロンプトエンジニアリング#Continuous AI
キャリアポートフォリオ作成ガイド
キャリア 2026-02-18

キャリアポートフォリオ作成ガイド

「キャリアポートフォリオ作成ガイド」のまとめと読書メモ。重要なポイントと実践的な知見を整理します。

#転職#レジュメ
良いアーキテクチャ戦略・悪いアーキテクチャ戦略
アーキテクチャ 2026-02-05

良いアーキテクチャ戦略・悪いアーキテクチャ戦略

良いアーキテクチャ戦略・悪いアーキテクチャ戦略について、設計原則とトレードオフ、実践的な適用方法を詳しく解説します。

#アーキテクチャ戦略#アーキテクチャ#設計
なぜ・いつアーキテクチャ戦略を書くべきか
アーキテクチャ 2026-02-05

なぜ・いつアーキテクチャ戦略を書くべきか

なぜ・いつアーキテクチャ戦略を書くべきかについて、設計原則とトレードオフ、実践的な適用方法を詳しく解説します。

#アーキテクチャ戦略#アーキテクチャ#設計
アーキテクチャ戦略・戦術・設計の書き分け
アーキテクチャ 2026-02-05

アーキテクチャ戦略・戦術・設計の書き分け

アーキテクチャ戦略・戦術・設計の書き分けについて、設計原則とトレードオフ、実践的な適用方法を詳しく解説します。

#アーキテクチャ戦略#アーキテクチャ#設計
要件と制約の違い
アーキテクチャ 2026-01-09

要件と制約の違い

ソフトウェア設計における要件と制約の違いを、ISO 29148の定義をもとに整理し、アーキテクチャのトレードオフ判断に役立てます。

#制約#要件#要求#設計#アーキテクチャ
ADRを書くときに抑えておくべきポイント
アーキテクチャ 2026-01-09

ADRを書くときに抑えておくべきポイント

ADRを書く際のポイントを解説。アトミックな意思決定、トレードオフの記録、チームでの議論、テクニカルライティングの原則に焦点を当てます。

#Architecture Decision Record#設計#アーキテクチャ
チームトポロジーとは?エンジニアリング組織の構成方法
マネジメント 2026-01-09

チームトポロジーとは?エンジニアリング組織の構成方法

チームトポロジーの4チームタイプ(ストリームアラインド・プラットフォーム・イネイブリング・コンプリケイテッドサブシステム)と3つのインタラクションモード、コンウェイの法則・認知負荷を軸にした組織設計を解説します。

#チームトポロジー#チームマネジメント#組織設計
ソフトウェア開発チームがMVVを定めるべき理由
マネジメント 2026-01-07

ソフトウェア開発チームがMVVを定めるべき理由

ソフトウェア開発チームがMVV(ミッション・ビジョン・バリュー)を定めるべき理由を、目的の明確化やチームの方向性の観点から解説します。

#チームマネジメント
プラットフォームエンジニアリングとは?内部開発者プラットフォームの構築
アーキテクチャ 2025-12-26

プラットフォームエンジニアリングとは?内部開発者プラットフォームの構築

プラットフォームエンジニアリングとは何か、内部開発者プラットフォーム(IDP)の構築方法と、DevOps・SRE との関係を解説します。

#プラットフォーム・エンジニアリング
TUI開発で役立つターミナル仕様の理解
アプリケーション 2025-10-18

TUI開発で役立つターミナル仕様の理解

TUI開発の基盤となるターミナル仕様、Line Discipline・termios・ANSIエスケープシーケンスの動作原理とGo実装

#TUI#termios#ターミナル#UNIX#Golang
アーキテクチャアドバイスプロセス(AAP)とは何か?
アーキテクチャ 2025-08-16

アーキテクチャアドバイスプロセス(AAP)とは何か?

アーキテクチャアドバイスプロセス(AAP)とは何か?について、設計原則とトレードオフ、実践的な適用方法を詳しく解説します。

#アーキテクチャアドバイスプロセス#アーキテクチャレビューボード#アーキテクチャ
技術的な意思決定において制約やトレードオフを明示することの重要性
アーキテクチャ 2025-08-05

技術的な意思決定において制約やトレードオフを明示することの重要性

技術的な意思決定で制約やトレードオフを明示することの重要性を解説。将来の再評価や組織の成長につながる記録の残し方を紹介します。

#アーキテクチャ#システム設計
キャッシュ戦略の基本的なパターンについて
アーキテクチャ 2025-08-03

キャッシュ戦略の基本的なパターンについて

「キャッシュ戦略の基本的なパターンについて」のまとめと読書メモ。重要なポイントと実践的な知見を整理します。

#キャッシュ#システムパフォーマンス
Webアプリケーションの処理モデルについて
アーキテクチャ 2025-08-02

Webアプリケーションの処理モデルについて

Webアプリケーション処理モデル対比、イベントループ・マルチスレッド・マルチプロセスのメリット・デメリットと選定基準

#イベントループ#スレッド#プロセス
ACID vs BASE:データベースの一貫性モデルを徹底解説
アーキテクチャ 2025-08-02

ACID vs BASE:データベースの一貫性モデルを徹底解説

ACID と BASE という2つのデータベース一貫性モデルの違いを比較し、CAP 定理との関係やどちらを選ぶべき場面かをわかりやすく解説します。

#ACID#BASE
CAP定理とは?分散データベースのトレードオフを解説
アーキテクチャ 2025-08-02

CAP定理とは?分散データベースのトレードオフを解説

CAP 定理と PACELC 定理をわかりやすく解説。分散データベースにおける一貫性・可用性・分断耐性のトレードオフを具体例で学べます。

#CAP#PACELC#分散システム
選択と集中を促す振り返りフレームワーク「bmf」
開発プロセス 2025-07-23

選択と集中を促す振り返りフレームワーク「bmf」

選択と集中を促す振り返りフレームワーク「bmf」。個人的な振り返りとハイライトをまとめます。

#振り返り#KPT
凝集度と結合度とは|良い設計を支える2つの指標
アーキテクチャ 2025-06-25

凝集度と結合度とは|良い設計を支える2つの指標

ソフトウェア設計の指標である凝集度と結合度を解説。凝集度の7段階(偶発的〜機能的)と結合度の6段階(内容〜データ)を、具体例とともに整理します。

#設計#システム設計
OPAを利用したアクセス制御のパターン
アーキテクチャ 2025-06-22

OPAを利用したアクセス制御のパターン

OPAを利用したアクセス制御のパターンについて、設計原則とトレードオフ、実践的な適用方法を詳しく解説します。

#Open Policy Agent#権限管理
RubyとRailsのIO・CPU特性について
アプリケーション 2025-06-14

RubyとRailsのIO・CPU特性について

理解するRuby・RailsのI/O特性。GVL制約、Pumaスレッド・プロセス設計、見かけのI/O待ちの実態、計測による最適化指針。

#Ruby#Ruby on Rails
OPAにおけるページネーションへの影響と解決策に関する検討
アプリケーション 2025-06-14

OPAにおけるページネーションへの影響と解決策に関する検討

OPAにおけるページネーションへの影響と解決策に関する検討の原因と解決方法について解説します。

#Open Policy Agent#オフセットページネーション#カーソルページネーション#権限管理
設計の賞味期限を考える
アーキテクチャ 2025-06-08

設計の賞味期限を考える

設計の賞味期限を考えるについて、設計原則とトレードオフ、実践的な適用方法を詳しく解説します。

#設計#システム設計#アーキテクチャ戦略#アーキテクチャ
スケーラビリティを計測する
アーキテクチャ 2025-06-08

スケーラビリティを計測する

スループット・レイテンシ・効率といった指標やアムダールの法則などの数理モデル、実践的なベンチマークで、システムのスケーラビリティを計測する方法を解説します。

#スケーラビリティ
アーキテクチャドキュメントを書くときに気をつけること
アーキテクチャ 2025-05-25

アーキテクチャドキュメントを書くときに気をつけること

アーキテクチャドキュメントを書くときに気をつけることについて、設計原則とトレードオフ、実践的な適用方法を詳しく解説します。

#アーキテクチャ戦略#アーキテクチャ
自分的システムの仕様書の構成
アーキテクチャ 2025-05-19

自分的システムの仕様書の構成

システム仕様書の9階層構成、概要・アーキテクチャ・データモデル・API・技術詳細をmermaidコード化して運用する方法

#システム設計#設計#Tips
境界付けられたコンテキストとは
アーキテクチャ 2025-05-19

境界付けられたコンテキストとは

ドメイン駆動設計における境界付けられたコンテキストを解説。言葉の意味を明確にし、責務を整理してシステム設計を改善する考え方を紹介します。

#DDD
イベントストーミングとは
アーキテクチャ 2026-06-16

イベントストーミングとは

ドメイン駆動設計の文脈で生まれたイベントストーミングを解説。付箋を使ったワークショップで業務ドメインを高速に可視化し、開発者と業務担当者の共通理解を作る手法を紹介する。

#DDD#EventStorming
OPAを使用したマイクロサービスのアクセス制御システムの実装
アーキテクチャ 2025-03-20

OPAを使用したマイクロサービスのアクセス制御システムの実装

設計するOPAによるアクセス制御。マイクロサービス権限管理、Rego言語、ポリシーエンジン、リソースレベルの細粒度制御実装パターン

#権限管理#Open Policy Agent#RBAC#マイクロサービス
クネビンフレームワークを活用したストーリーポイントの考え方
開発プロセス 2025-02-26

クネビンフレームワークを活用したストーリーポイントの考え方

クネビンフレームワークを活用し、ストーリーポイントの見積もり基準をどう考えるかについてのアイデアを紹介します。

#アジャイル#スクラム
アーキテクチャ戦略について考える
アーキテクチャ 2025-02-16

アーキテクチャ戦略について考える

アーキテクチャ戦略について考えるについて、設計原則とトレードオフ、実践的な適用方法を詳しく解説します。

#アーキテクチャ#組織設計#設計#システム設計#アーキテクチャ戦略
負荷試験を始めるためのスターティングガイド
アーキテクチャ 2024-08-24

負荷試験を始めるためのスターティングガイド

「負荷試験を始めるためのスターティングガイド」のまとめと読書メモ。重要なポイントと実践的な知見を整理します。

#負荷試験
集合について
数学 2024-07-06

集合について

理解する集合論の基礎。要素・部分集合・和集合・積集合、データ構造・RDB理論、論理表現への応用と問題解決力養成。

#離散数学#集合
自作HTTPルーターから新しいServeMuxへ
アプリケーション 2024-04-27

自作HTTPルーターから新しいServeMuxへ

自作HTTPルーターgoblinからGo 1.22で強化されたnet/http ServeMuxへ移行。新しいルーティングパターンや他ルーターとの性能比較、ServeMuxで十分なケースを解説します。

#Golang#router
MySQLのロック解説:デッドロックの防ぎ方とパフォーマンス改善
データベース 2024-04-05

MySQLのロック解説:デッドロックの防ぎ方とパフォーマンス改善

MySQL のロック(行ロック・テーブルロック・GAP ロック)を解説。デッドロックの防ぎ方とトランザクション設計のベストプラクティスを紹介します。

#MySQL#トランザクション#ロック
データベースインデックスとは?仕組みと必要なタイミング
データベース 2024-04-01

データベースインデックスとは?仕組みと必要なタイミング

データベースインデックスとは何か、B-Tree・ハッシュインデックスの仕組み・効果的に使う場面・作り過ぎのデメリットを解説します。

#DB#インデックス#MySQL
ソフトウェア開発のプロジェクトにおける不確実性への向き合い方
開発プロセス 2023-12-22

ソフトウェア開発のプロジェクトにおける不確実性への向き合い方

ソフトウェア開発における不確実性への向き合い方を、アジャイルな計画づくりの観点から解説。既知の未知と未知の未知を区別し、リスクを抑える方法を紹介します。

#アジャイル
Goで始めるコードのパフォーマンス改善
パフォーマンス 2023-06-12

Goで始めるコードのパフォーマンス改善

Goのパフォーマンス改善の実践。pprofによるプロファイリング、ベンチマーク、エスケープ解析、メモリアロケーション削減を、自作HTTPルーターの最適化事例とともに解説します。

#Golang
MySQLのトランザクション分離レベル:ダーティリード・ファントムリードを防ぐ
データベース 2023-06-08

MySQLのトランザクション分離レベル:ダーティリード・ファントムリードを防ぐ

MySQL のトランザクション分離レベルを解説。ダーティリード・ノンリピータブルリード・ファントムリードと、それぞれを防ぐ設定方法を学べます。

#トランザクション#MySQL
トランザクション概観
データベース 2023-06-07

トランザクション概観

データベーストランザクションの基礎を解説。ACID特性、並行性制御、分離レベルといったデータ整合性の仕組みを紹介します。

#トランザクション
システム設計関連の資料を読み漁った
アーキテクチャ 2023-02-27

システム設計関連の資料を読み漁った

システム設計関連の資料を読み漁ったについて、設計原則とトレードオフ、実践的な適用方法を詳しく解説します。

#システム設計#リンク集
bmf-techを支える技術
アーキテクチャ 2022-08-08

bmf-techを支える技術

Docker、Golang、Vue.js、Nginx、Prometheus、Grafanaなど、このブログのインフラと監視を支える技術を紹介します。

#Docker#Docker Compose#VPS#Golang#Vue.js#Prometheus#Promtail#Loki#Grafana#Nginx
net/httpでつくるHTTPルーター自作入門
アプリケーション 2021-10-24

net/httpでつくるHTTPルーター自作入門

Golangのnet/httpでHTTPルーター自作を解説。ルートマップ、URLパス解析、メソッド別ルーティング、パスパラメータの仕組みをステップバイステップで実装ガイドします。

#Golang#HTTP