Plus one

Masaki Enomoto

~ Web developer's portfolio ~

はじめに


はじめまして。
関西を中心に活動しているWebエンジニア、榎本 匡希です。

得意なプログラミング言語はPHPとJavascriptで、
WebサイトやWebアプリの開発などを担当してきました。

また、業務効率化・自動化にも関心があり、
SQLチューニングや定常業務の自動化などの業務改善の実績もあります。

現在は常駐・リモート問わずお仕事受付中ですので、
お気軽にお問い合わせください。

実 績


恩情機能搭載!
給与ランク変更システム

CakePHP/jQuery

売上金額、指名本数、そしてリピート率。

前月からのポイント持越しや決裁者の恩情、永久ランク維持といった複雑に絡み合った評価軸を計算式にまとめ上げ、 ボタン一つで給与ランクを設定できるWebシステムを作成しました。

画面設計から開発・運用まで一貫して担当することとなり、幅広い領域を経験することができました。

SQLチューニングで
速度50倍

postgreSQL

割り込みやタイムアウトで頻繁にコケる
日次バッチのパフォーマンス改善を行いました。

タイムアウトの原因を調査したところ、なんと10万件超の巨大データを5回以上も全走査していることが判明。

INDEXの見直しとCTEの活用で最適化した結果、
処理速度50倍、200秒 → 4秒という
大幅なパフォーマンス改善を達成しました。

新規LPの制作

Yii2/Twig

Webマーケティングの入口であるランディングページですが、 文章や画像といったコンテンツがメインであり、
そこはほぼデザイナーさんの作業領域。

僕はエンジニア作業としてルーティングや誘導先ページの制作といったロジック部分を担当し、 データの入力フォームやサンクスメールの送信処理などを実装しました。

メール送信処理はコントローラにベタ書きするのが慣例でしたが、 今回は新規ページ作成のタイミングだったので、この機会にメールにまつわる処理をまとめてモデルに載せ替え、 汎用性とユニットテストを意識したプログラムにしました。

自動テストの構造改革

Codeception

大規模サイトの保守運用案件では、プログラムのテストも重要視されており、 ブラウザテストも自動化されていました。

しかし、テストに関する設計方針は特になく、
テストコードがスパゲティ化してしまっていました。

そこで僕はテストコードの設計として、
"ページオブジェクトパターン"の導入を行いました。

ページ全体の構造をページオブジェクトにまとめ、 繰り返し使われる一連のアサーションや複雑なロジックをステップオブジェクトに逃がすことで、 テストコード本体の見通しを劇的に改善することに成功しました。

いらなくない?
データ入力作業の自動化

PHP/batch

エクセルに日々の集計データを入力する事務作業。
貴重な時間を単純作業で消費するなんてもったいない!

そんな面倒な仕事も僕にかかれば、バッチを起動するだけで自動的に終わっちゃう簡単業務になりました。

不可能を可能にする
魔法のプログラム

Yii2

保守開発で避けて通れないクソコード。 既存の仕様では対応できないその依頼、当たり前に告げられる「最短納期」。

こうして僕も禁断の魔法という名の即席ベタ書きコードに
手を染めてしまうことはあるのです...

お問い合わせ


SNS

直接メールする

フォームで
お問い合わせ