RAKUS Developers Blog | ラクス エンジニアブログ

株式会社ラクスのITエンジニアによる技術ブログです。

PHP Conference Japan 2019 でレガシーシステムとの戦い方について話しました。

はじめまして。@penguin_no_045です。 東京で12/1に開催された PHP Conference Japan 2019でLT登壇してきました。 また、株式会社ラクスは PHP Conference Japan 2019 のブロンズスポンサーとして協賛しています。

イベント概要

登壇

社内最長老のシステムにPHPUnitで立ち向かう方法

speakerdeck.com

発表の要旨は、レガシーシステムPHPバージョンアップをPHPUnitでなんとかしたというものです。いわゆるレガシーネタですが、 少ないリソースでどうやって大きなコードをテストしていくのかということについてお話しました。内容は発表資料を参照いただくことにして実際に行ったことを振り返ると、それにしてもかなり極端な手法を採用したように思います。
なぜこんな手法をとれたのかというと、今回のPHPバージョンアップによって文法的に正しい状態が維持されているかどうかだけに責務を絞ったからです。それだけが目的だったので、モックでもなんでも使用してとにかくカバレッジを上げるという戦術を取ることができました。しかし品質担保の責務がもしあるならば、初めからこの手法は破綻しているでしょう。

お礼

発表準備に際してさまざまな方に資料のレビューや発表練習にお付き合いいただきました。
この場を借りてお礼を言いたいと思います。ありがとうございました!

印象に残ったセッション

改善失敗から学ぶ、レガシープロダクトに立ち向かうチーム作り。

speakerdeck.com

まさに自分たちが通るであろう道を見せられた気がしました。改善を続けていく中で起こったことが紹介されています。実際、カイゼンにチャレンジしたはいいけど、失敗したのでやめてしまった、なんていう話はたくさんあることでしょう。しかし失敗から学ぶことは多いはずですし、成功に結び付けることができればムダにはなりません。
カイゼンを続けているチームがいかに失敗し、その学びからカイゼンを回してきたのかを知ることができるセッションでした。

知見のない技術スタックをプロダクション導入するエンジニアの導入戦略

speakerdeck.com

いつの日か既存サービスと同じ技術スタックが最適ではない機能やサービスを開発するときがくるかもしれません。このセッションでは、まさにそのような場面において組織の不安と向き合い、最適な技術を選定し、開発するために取った戦略を紹介されています。導入実績がない技術スタックには組織としても「不安」がつきまといます。その不安に対して向き合っていくための武器として、テスト・監視・コード検査を挙げ、それらをいかにして活用して、開発をすすめていくか。その実践内容がそれぞれの手法ごとに解説されています。

このセッションでは「知見のない技術スタック」と銘打っていますが、実際に機能選定で知見のない技術スタックを選定候補に上げるためには、別の「寝技」のようなものがあるように思います。また、このセッションで紹介されたプラクティス事態は特別なものというわけではなく、日ごろから実践することでプロダクトの品質に大きく貢献できるのではないかと感じました。

感想

今回、登壇に際してたくさんの「はじめて」がありました。

  • 1000人以上参加するイベントに参加
  • PHP関連のイベント参加
  • 登壇すること

このようにはじめてづくしであったわりには発表自体はリラックスして行えたのではないかと自画自賛しておきます。
カンファレンスでは、PHPに限らず広い領域のセッションがあったため、広範囲に刺激を受けることができました。

おしらせ

PHPerKaigi 2020に登壇します!

セッションタイトルはPHPerがこれから「型」とお付き合いしていくためにです。
PHPで導入が進む型についてお話します。 プロポーザルはこちらをご覧ください。

Copyright © RAKUS Co., Ltd. All rights reserved.