分散システムを専門とするプリンシパルエンジニア・在野研究者です。強みは次の 2 点にあります。
Raft をはじめとする分散合意アルゴリズムを、論文の読解から Go による自作実装まで一貫して扱います。Raft ベースの Redis 互換 KVS や、Lucene と Raft を組み合わせた Elasticsearch 互換の分散検索エンジンを設計・実装してきました。Spanner の TrueTime、TiDB の Timestamp Oracle、Aurora / Aurora DSQL に代表される「Log is the Database」やコンピュート・ストレージ分離といったアーキテクチャを、スケーラビリティと一貫性のトレードオフとして整理し、DB Tech Showcase やクラウドネイティブ関連のカンファレンスで継続的に発表しています。特定の製品に閉じない知識のため、決済や予約のように不整合が許されない領域でのデータストア選定と設計判断にそのまま接続できます。
アドテク(SSP/DSP)、数千万ユーザー規模のキャリア向け通知基盤、CX プラットフォームの大量配信基盤と、低遅延・高スループット・スパイク耐性が求められる配信システムを一貫して担当してきました。速いだけでなく安く回り続けることを重視しており、クライアント中心一貫性モデルによってノード間の同期コストを削減する低遅延分散 KVS の提案と論文化、DNS のキャッシュヒット率と応答速度を改善する手法の提案(情報処理学会 学生奨励賞)、SLO の再定義とプリエンプティブルインスタンスの安全な運用による配信基盤のコスト削減などに取り組んできました。キャッシュ、名前解決、データの配置といったレイヤーごとに、遅延とコストの両方を下げる余地を見つけて実装します。個人でも VRChat 向けの画像配信 CDN(resize.gg)を設計・運用しています。
現在は hacomono のプリンシパルエンジニアとして、マルチプロダクト戦略に向けた部分的なマイクロサービス化と、疎結合なスキーマ駆動イベントバスの設計・実装を主導しています。理論(論文研究・自作実装)と実践(大規模商用開発)を往復しながら、堅牢でスケーラブルなシステム基盤を構築します。
bootjpが作成したプロダクトのコレクションです。
hashicorp/raft を採用し、データストア、Snapshot、StateMachine (Apply/Snapshot/Restore) を実装。RESP は redcon を使って実装し、GET/SET/DEL をサポート。MOVED でリーダーへリダイレクトし、3ノード構成で動作確認。クラウドネイティブDBはいかにして制約を克服したか? 〜進化の歴史から紐解く、スケーラブルアーキテクチャの設計指針〜
NewSQL: ストレージ分離と分散合意を用いたスケーラブルアーキテクチャ
AWSの耐久性のあるRedis互換KVSのMemoryDBについての論文を読んでみた
パーソナライズされたコンテンツ配信のための低遅延分散KVSの構築 (VRChat Ver)
Aurora ServerlessからAurora Serverless v2への課題と知見を論文から読み解く
Akamaiのキャッシュ効率を支えるAdaptSizeについての論文を読んでみた
ウェルネス業界向け垂直統合型SaaSにおいて、マルチプロダクト戦略を支える基盤刷新を担当。
分散検索エンジンおよびメタバース基盤のバックエンド開発を担当。
CX プラットフォームを支える大量配信・データ処理基盤の開発を担当。低レイテンシーと低コストの両立が主要テーマ。
スマートフォンキャリア向けの大規模データ配信、通知管理基盤、および検索基盤の開発・運用を担当。低遅延と高スループットが同時に要求される環境で、配信基盤の設計と運用に従事。
SSP/DSP 領域の開発およびスクリプトタグベースのアクセス解析基盤の構築。入札応答に厳しい時間制約がある広告配信で、低レイテンシー配信の基礎を習得。
中学生時代に起業し、レンタルサーバーサービスの立ち上げと運用を行う。
VRChat上で分散システムに特化した勉強会コミュニティを運営。
分散システム、分散ストレージ、および分散KVSに関する理論研究と実装、および論文執筆。
技術的興味に基づくプロダクト開発およびツール作成。