STS innovation Canada (バンクーバー, カナダ) / バックエンドエンジニア
工場で使用される作業用具の貸出状況管理システムの開発
6名のチームにバックエンドエンジニアとして参加し、工場で使用される作業用具の貸出状況管理機能のWeb APIを開発しました。 すでに稼働している管理Webアプリケーションがあり、そこに新規機能を追加する形で実装しました。 使用技術は以下の通りです: - バックエンド - PHP, Laravel, PostgreSQL, Docker コーディングルールがなく統一性を著しく欠いた混沌としたコードベースであり、開発を担当する機能についても3ヶ月で実装しきって後続のメンバーに引き継がなければなりませんでした。 そこで、自分が新規開発する機能だけでも修正と拡張が可能な状態にし、かつ他の部分の実装方法と著しく乖離しない状態で実装し引き継げるようにしました。 そのために、主に以下の方法を採用しました: - 処理ごとにDTOクラスを定義し、インプットとアウトプットのデータの型をコードから判別できる状態にした - ビジネスロジックはServiceクラスを作成して分離した - 入力バリデーションと入力値のDTOへの変換をLaravelのFormRequestクラスで行い、責務を分離した - 最終的にAPIから返すJSONの型を統一した