Slide 1

Slide 1 text

「Chatwork」における PHP 開発の 
 取り組みの紹介 
 畑中 貴弘 
 2025 年 1 月 23 日 


Slide 2

Slide 2 text

目次
 CONTENTS 01 | 自己紹介
 02 | 「Chatwork」における PHP
 03 | PHP チームが直面している課題
 04 | まとめ


Slide 3

Slide 3 text

自己紹介


Slide 4

Slide 4 text

自己紹介
 氏名
 畑中 貴弘 (はたなか たかひろ) 
 所属
 プロダクト開発ユニット サーバーサイド開発 
 略歴
 2023年夏に JOIN。10年以上にわたり eb エンジニアとしての開 発業務に従事。テック系スタートアップからメガベンチャーまで、 物理インフラからスマホネイティブアプリまで幅広く経験してきた。 バックエンド開発が得意
 趣味
 モータースポーツ観戦。富士・鈴鹿・もてぎの 
 PE G 、 PE FO M LA、スーパー耐久はだいたい現地 観戦してる


Slide 5

Slide 5 text

「Chatwork」における PHP 


Slide 6

Slide 6 text

データストレージ / キャッシュ 
 実行基盤
 検索サーバー
 メッセージングシステム 
 モバイルアプリ
 eb I
 API エンドポイント 
 システム構成イメージ
 3
 Aurora
 DynamoDb
 ElastiCache
 7

Slide 7

Slide 7 text

現在のシステムアーキテクチャ
 etc 8

Slide 8

Slide 8 text

現在のシステムアーキテクチャ
 etc PHP
 cala 
 9

Slide 9

Slide 9 text

「Chatwork」における PHP
 10 ● 全体の半数以上は PHP を利用 
 ○ cala に移行したと言われることが多いが、実はそうではない 
 ● ローンチ時に作られた自社フレームワークをメンテナンスしている 
 ● PHP 部分の新規開発も行っている 


Slide 10

Slide 10 text

「Chatwork」における PHP
 11 ● PHP 8.1
 ● 自社 M C フレームワーク
 ○ Clean Architecture の考え方が入っているコードも一部ある 
 ● モノリシックな環境が残る
 ○ コードやリポジトリ構成、デプロイ、DB など 
 ● 数チームが協力して開発している 


Slide 11

Slide 11 text

PHP を用いた開発の紹介
 12 名刺読み取り機能
 https://go.chatwork.com/ja/news/update/202309.html 
 リアクションの追加 https://go.chatwork.com/ja/news/update/202424.html 
 予約送信機能 https://go.chatwork.com/ja/news/update/202435.html 


Slide 12

Slide 12 text

PHP を用いた開発の紹介
 13 ● 新規開発だけでなく、運用保守も実施 
 ○ PHP のメジャーバージョンアップ 
 ○ 関連するライブラリ、コンポーネントやミドルウェアのアップデート 
 ■ Amazon Aurora、Amazon EK など 
 ○ 不具合修正、既存機能の改善、パフォーマンスチューニングなど 
 ● ほぼ毎日、何らかのリリースが行われている 
 


Slide 13

Slide 13 text

PHP チームが直面している課題 


Slide 14

Slide 14 text

PHP チームが直面している課題
 15 ● 「Chatwork」のサービスがローンチされて 14 年経過 
 ○ 過去の事情による設計やコードがそこそこ残っている 
 ○ 特定のチームに作業が集中しがち 
 ● 過去の経緯や先人の開発者には強くリスペクトしつつ、現代の事情にそぐわなくなった 
 設計やコード、体験の課題が表面化しつつある 
 コードの更新はもちろん、組織全体を巻き込んでプロダクト全体を更新していく必要がある 


Slide 15

Slide 15 text

まとめ
 16 ● 「Chatwork」における PHP との付き合い方を紹介した 
 ● 今後も PHP とは末永いお付き合いが続いていく 
 ● プロダクトのコードだけでなく、組織の課題もある 
 ● 組織全体を巻き込んでプロダクト全体を更新・リプレイスしていく必要がある