アーカイブ 2023

75 件の記事

開発生産性についての記事漁り
マネジメント 2023-12-30

開発生産性についての記事漁り

開発生産性について調べた記事やリソースをまとめました。DORAのFour KeysやSPACEフレームワークを使った計測の考え方を紹介し、デプロイ頻度・変更のリードタイム・変更障害率・復元時間といった指標や、生産性を捉えるうえでの観点を整理します。

#開発生産性#リンク集
アーキテクチャ設計と組織設計についての記事漁り
アーキテクチャ 2023-12-27

アーキテクチャ設計と組織設計についての記事漁り

ソフトウェアアーキテクチャと組織設計の関係について、読んだ記事やリソースをまとめた記事。コンウェイの法則が及ぼす影響などをテーマに、アーキテクチャと組織のあり方を考えるうえで参考になる情報を随時リストアップしていく。

#設計#アーキテクチャ#リンク集
Aurora Serverlessについて調べた
データベース 2023-12-27

Aurora Serverlessについて調べた

Amazon Aurora Serverlessに興味を持って調べた内容をまとめた記事。Aurora Serverless v2のマルチAZ対応やオートスケーリング、コスト最適化、導入時に検討したいポイントなどを、参考にした記事とともに整理する。

#Amazon Web Service
GrafanaでContact PointsとPoliciesをプロビジョニングするようにする
インフラストラクチャ 2023-12-27

GrafanaでContact PointsとPoliciesをプロビジョニングするようにする

GrafanaのContact Pointsとアラートポリシーを、YAML設定ファイルでプロビジョニングしてSlack通知を自動化する方法を解説します。

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

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

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

#アジャイル
モニタリングシステムにおけるPull型とPush型のアプローチの違い
インフラストラクチャ 2023-12-13

モニタリングシステムにおけるPull型とPush型のアプローチの違い

モニタリングシステムにおけるPull型とPush型のアーキテクチャの違いを、それぞれのメリット・デメリットと代表的なツールとともに整理して解説します。

#モニタリング
アーキテクチャ設計の進め方
アーキテクチャ 2023-11-23

アーキテクチャ設計の進め方

構成図レベルでアーキテクチャを設計するときの、個人的に良いと思う進め方を1つ取り上げてまとめた記事。要件定義や調査がある程度済んだ前提で、構成図を書きながら段階的に設計を進めるアプローチを紹介し、思考の整理やチームの合意形成、過剰設計の防止につなげる。

#アーキテクチャ#設計
GoReleaserを使ってのGoのアプリケーションを配布する
アプリケーション 2023-11-11

GoReleaserを使ってのGoのアプリケーションを配布する

GoReleaserを使って、Goで書いたアプリケーションをクロスコンパイルし、バイナリとして配布する方法を解説した記事です。GoReleaserとはどのようなツールなのかを説明したうえで、実際に設定してリリースを行うまでの手順を紹介します。

#Golang#GitHub Actions
ADRのテンプレートファイルを生成するコマンド
アプリケーション 2023-11-10

ADRのテンプレートファイルを生成するコマンド

アーキテクチャ決定記録(ADR)のテンプレートファイルを生成するMakeコマンドの実装を紹介する記事。自動採番やステータス管理を備えたコマンドの中身を、実際のMakefileの記述とともにメモとして残す。

#Architecture Decision Record
GraphQLとは?実例で学ぶ完全ガイド
アプリケーション 2023-11-09

GraphQLとは?実例で学ぶ完全ガイド

GraphQL の完全入門ガイド。クエリ・ミューテーションの仕組み、REST との比較、実際に使い始めるための実践的なサンプルを解説します。

#GraphQL
HTTP Routerの自作で参考にした資料
アプリケーション 2023-10-30

HTTP Routerの自作で参考にした資料

自作のHTTPルーター「goblin」の開発で参考にした、各種の資料や自分のブログ記事をまとめた記事です。radix木やトライ木といったデータ構造、ベンチマーク比較など、GoでHTTPルーターを自作する際に役立つ情報を、分散していたものを集約して紹介します。

#router#HTTP#URLルーティング#リンク集
サービスメッシュとは?IstioとLinkerdの仕組みを解説
インフラストラクチャ 2023-10-29

サービスメッシュとは?IstioとLinkerdの仕組みを解説

サービスメッシュについて調べたことをまとめた記事です。分散システムにおけるサービス間の通信を管理するためのネットワークインフラであるサービスメッシュとは何かを、サイドカープロキシの仕組みや、IstioとLinkerdによるトラフィック管理・可観測性の実現方法とあわせて解説します。

#サービスメッシュ
CircleCIでphpunitの並列テストを行う
テスト 2023-10-21

CircleCIでphpunitの並列テストを行う

CircleCIでPHPUnitの並列テストを実行するアプローチを解説した記事。シェルスクリプトでテスト設定ファイルを動的に生成し、コンテナを分割してテストを並列化することで、実行時間を短縮する方法を具体的に紹介する。

#CircleCI#phpunit
slogを使ったContextual Logging
アプリケーション 2023-10-08

slogを使ったContextual Logging

Go 1.21以降のlog/slogを使ったコンテキスト付き構造化ログを解説。カスタムslog.HandlerやcontextからのトレースID注入、JSON出力を紹介します。

#slog#contextual logging
More Effective Agile
開発プロセス 2023-10-01

More Effective Agile

『More Effective Agile』の書評。アジャイルを実践するためのプラクティスを幅広くまとめた一冊。個別の手法にとどまらず、リーダーやチームがアジャイルの効果を引き出すための勘所を整理しており、実践の教科書として活用できる。

#アジャイル#書評
モジュラモノリスアーキテクチャ:マイクロサービスとの比較と選び方
アーキテクチャ 2023-09-25

モジュラモノリスアーキテクチャ:マイクロサービスとの比較と選び方

モジュラモノリスというアーキテクチャについて調べたことをまとめた記事です。モジュール分割を施したモノリスとは何かという定義から、マイクロサービスや従来のモノリスとの違い、どのような場面で選択すべきかまでを、実践的な観点で整理します。

#モノリス
CQRSとは?コマンドクエリ責務分離を使うべき場面
アーキテクチャ 2023-09-18

CQRSとは?コマンドクエリ責務分離を使うべき場面

CQRS(コマンドクエリ責務分離)について調べたことをまとめた記事。データの更新を担うCommandと参照を担うQueryを分離するパターンの考え方や、CRUDとの違い、スケーラビリティ改善につながる場面と適用すべきでない場面を整理する。

#CQRS#マイクロサービス
Sagaパターンとは?マイクロサービスでの分散トランザクション管理
アーキテクチャ 2023-09-17

Sagaパターンとは?マイクロサービスでの分散トランザクション管理

Saga パターンとは何か、マイクロサービスにおける分散トランザクション管理の方法(コレオグラフィ型・オーケストレーション型)を解説します。

#マイクロサービス#分散トランザクション
Goのresponse.WriteHeaderの副作用について
アプリケーション 2023-09-11

Goのresponse.WriteHeaderの副作用について

response.WriteHeaderの複数回呼び出しによる副作用を解析し、bytes.Bufferを使った回避方法とtemplateのExecute処理の実装パターンを提示。

#Golang#Tips
GoでServeMuxの機能拡張を提案するProposalがAcceptedになった
アプリケーション 2023-08-31

GoでServeMuxの機能拡張を提案するProposalがAcceptedになった

Goのnet/http ServeMuxに動的ルーティングとパスパラメータを追加するProposalがAcceptedに。goblinなどサードパーティルーターやGoのルーティングの今後への意味を解説します。

#Golang#router#HTTP