PHPフルスクラッチ
フレームワークを使用せず、ルーティング、セッション管理、 DBアクセスなどWebアプリケーションの基本構造から実装しました。
YK-Lab Yoshida/ WEB ENGINEERING
組み込みソフトウェア開発で培った、設計・デバッグ・品質への視点。
その経験を活かし、現在はLaravel / Vue.js / PHPを中心にWeb開発に取り組んでいます。
ABOUT / 01
MY BACKGROUND
はじめまして、吉田です。
20年以上、ソフトウェア開発の現場に携わってきました。
「システム全体を理解したうえで、担当領域を設計・実装すること」を大切にしています。
自動車向けソフトウェア開発を中心に、設計・実装・検証・デバッグなど、 品質と信頼性が求められる開発現場で経験を積んできました。 現在はLaravel・Vue.js・PHPを中心としたWeb開発を行っています。 フロントエンド、バックエンド、データベース、インフラまでのつながりを理解し、 システム全体への影響を考えながら設計・実装することを強みとしています。
FEATURED WORK / 02
DESIGN & DEVELOPMENTPHPフルスクラッチ / 剣道交流サービス
「たまに剣道をしたい。でもどこかに所属するのは少し重い。」 そんな実体験から生まれた、交流会や自主練習会を開催・検索できるWebサービスです。
フレームワークを使用せず、ルーティング、セッション管理、 DBアクセスなどWebアプリケーションの基本構造から実装しました。
ユーザー認証・認可、イベント作成・編集・削除、検索、 マイページなど主要機能をPHP / MySQLで実装しました。
JavaScript / Ajaxを用いて、画面全体を再読み込みせずに 操作できる非同期処理を実装しています。
CSRF・XSS・SQLインジェクション対策、入力値検証、 パスワードハッシュ化などを実装しました。
SPA PORTFOLIO / 03
FULL-STACK SINGLE PAGE APPLICATIONLaravel + Vue.js SPA / 学習ルート共有サービス
資格試験やプログラミングなど、自分が経験した学習ルートを投稿・共有し、 他のユーザーがチャレンジと進捗管理を行えるSPAです。
フロントエンドとREST APIを分離し、画面遷移とデータ取得を非同期で行う構成です。
JWT認証とPolicyを用い、ユーザーごとの操作権限をバックエンドで制御しています。
Vuexで認証情報や画面間の状態を管理し、Axiosの共通処理に責務を集約しています。
Service、Policy、FormRequestを使い、処理の役割と変更影響を分けて設計しました。
REACT PORTFOLIO / 04
REACT + TYPESCRIPT / PWAReact + TypeScript / 反応トレーニングアプリ
剣道やキックボクシングなどで、相手の一瞬の隙を捉えるべく、初動を鍛えることを目的として作成した ランダムタイマーアプリです。指定範囲内から待ち時間を毎回ランダムに決定し、 トレーニング中に合図音を再生します。
countdown・training・interval・finishedをPhaseとして明示的に定義。 時間値から状態を推測せず、状態遷移を基準に処理とUIを制御しています。
setIntervalによるカウント処理と、setTimeoutによるランダム合図を分離。 useEffectのクリーンアップで不要なタイマーが残らないよう制御しています。
localStorageから取得したJSONをunknownとして扱い、 独自の型ガードで検証してからTimer型として利用しています。
ViteのBASE_URLを利用して開発環境と本番環境のパス差を吸収。 サブディレクトリ配下でReact Router・音声ファイル・PWAが動作する構成にしています。
SKILLS / 05
TOOLS & STRENGTHSWeb開発を中心に、フロントエンド・バックエンド・データベース・インフラまで、 実装に必要な技術を幅広く扱ってきました。
WEB / APPLICATION
DATA / INFRA / TOOLS
ENGINEERING
LEARNING
NOTE / REACT
クラスコンポーネントで作られたTodoアプリを再実装し、 state・props・bind・配列操作などの新旧の違いを整理しました。
LEARNING
NOTE / TYPESCRIPT
Vite+Reactで作成したTodoアプリをTypeScript化し、 型推論・Props・イベント・型ガード・Union型などの基礎を整理しました。
MY STRENGTH
実装だけでなく、
設計・検証・改善まで。
実装に加え、要件整理、設計、レビュー、デバッグ、品質確認、不具合解析、改修まで経験。 長年の開発現場で培った視点を、Web開発にも活かしています。
JOURNEY / 06
CAREER TIMELINE組み込み開発を土台に、プロジェクト推進、Web開発へ。 これまでの経験をつなぎながら、開発領域を広げています。
自動車向けソフトウェア開発を中心に、 設計・実装・検証・デバッグ・不具合解析/改修を経験。 自らの不具合も含めた試行錯誤を重ね、 品質と再発防止を意識した開発姿勢を身につける。
製品リーダー、開発/管理プロセス構築、デジタルキー開発のPMOを経験。 要件整理、進捗・品質・課題管理、社内外折衝、関係者調整まで担当する。
PHP・Laravel・Vue.js・AWSを用いたWebアプリケーション開発へ。 フルスクラッチとSPAの双方で、 フロントエンド、API、データベース、クラウド環境まで経験を広げる。
20年以上のソフトウェア開発経験とWeb技術を活かし、 現在はフリーランスとしてWeb開発・品質支援・Web制作案件に携わっています。 開発だけでなく、業務整理や運用を含めた支援にも領域を広げています。
CONTACT / 07