スマートフォン向け
サイト構築
日本初のオンラインチケット販売サービスのスマートフォン向けサイトを担当。自社のプロキシ型変換基盤を用い、既存のPC向けサイトに手を加えることなくスマートフォン最適化を実現しました。販売開始時に負荷が瞬間集中する高トラフィック環境で、新規開発から14年以上、追加開発と保守運用を継続しています。
縦割りの開発チームを横断して技術方針を決め、プロジェクトを前へ進めるテクニカルリーダーです。
最大150画面・1,000名規模の業務システムで技術面をリードし、中規模の案件ではプロジェクトマネジメントも兼務してきました。小売の分野では、百貨店を含むグループ横断のEC改善と、2万店舗の棚割り業務システムの両方を経験しています。
プロキシ型サイト変換基盤の案件に新規開発から参画し、HTML / JavaScript / CSS / XPath による実装を担当した。
技術が製品側で確定した環境で、メンバー教育と進行管理を担当した。6年間で30件以上の最適化プロジェクトに関わり、常時3〜4件を並行しながら5名前後をリードした。
スクラッチ開発へ移行し技術選定の裁量を持つ。案件規模に応じてPM兼務と技術専念を使い分けている。
日本初のオンラインチケット販売サービスのスマートフォン向けサイトを担当。自社のプロキシ型変換基盤を用い、既存のPC向けサイトに手を加えることなくスマートフォン最適化を実現しました。販売開始時に負荷が瞬間集中する高トラフィック環境で、新規開発から14年以上、追加開発と保守運用を継続しています。
複数の事業会社を擁する大手小売グループで、事業会社を横断したECサイト改善を担当しました。統合ポータル・総合通販・食品宅配・百貨店・ベビー/マタニティ専門店という、業態の異なる5サイトが対象です。自社のクライアントサイド変換基盤を用い、企画立案から施策実施までを担い、いずれのサイトにも手を加えることなく外側から改善施策を積み上げました。
全国2万店舗の店舗スタッフと本部担当者が使う棚割り業務システム。画面数を絞った構成のため、限られた画面をいかに正確かつ効率的に使えるかが設計の要点でした。フロントエンド領域の技術選定を担当し、国をまたぐ分散チームをリードしました。
紙と対面で行われていた物件調査記録と契約書作成業務のWeb化。デザイナー・ディレクター・営業を含む職種横断チームを率い、開発フェーズに応じて要員数を調整しました。進行管理とQCDはプロジェクトリーダーへ委譲し、技術選定と全体方針の決定に注力しました。
金融アドバイザーが顧客の証券取引仲介業務を行う業務システムで、金融商品取引に関する規制要件への対応を含みます。プロジェクトリーダー3名がそれぞれエンジニアを抱える縦割り体制で、ラインを横断して技術面をリードしています。直接の指揮系統にない9〜12名のエンジニアが3ラインで並行して開発する中で、仕様と技術の整合性を保つことが役割の中心です。現在はバックエンドの開発も引き継いでいます。
立場や案件が変わっても、繰り返してきた進め方を3つにまとめました。
障害の検知がクライアントやエンドユーザーからの指摘頼みだった課題に対し、個人で自動検知を実装してから社内に提案しました。承認を経て自社サービスのオプションとなり、累計100件以上のプロジェクトに採用されました。
EVIDENCECASE STUDY 01
時差と言語の壁がある分散チームで、開発中に起きた問題をもとに伝え方を整えました。伝える内容の重要度に応じて、通訳・翻訳ツール・図を使い分けるやり方です。メンバーの一時離脱があっても1ヶ月ごとの開発サイクルを維持し、全20画面を予定どおりリリースしました。
EVIDENCECASE STUDY 02
不動産業務システムでは日々の進行管理とQCDをプロジェクトリーダーに委ねました。私は技術選定と全体方針、リスクへの対処、成果物のレビューと承認に絞りました。取引仲介システムでは、仕様をもとに共通化するものと各ラインに任せるものの境界を定めました。
EVIDENCE物件調査・契約書作成WebシステムCASE STUDY 03
変換対象は自社で制御できない他社サイトのHTMLです。元サイト側の構造変更で要素抽出が失敗すると表示崩れが起きます。例外を伴わないため気づきにくく、検知経路はクライアントまたはエンドユーザーからの指摘のみでした。発覚まで数日を要していました。
発生頻度は1案件あたり月1〜2回でした。月額課金制で契約案件数が増加傾向にあり、案件数に比例して緊急対応の総量が増え続ける構造にありました。
リードエンジニアとして裁量を得たことを機に、まず個人でSeleniumによる自動検知を実装しました。動作するものを用意した上で社内提案し、承認を経て自社サービスのオプションとして提供を開始しました。数十ページ規模のサイトでは数百件のテストケースを用意し、日次で実行する体制としました。あわせてクライアントおよび元サイト運営側とリリーススケジュールを共有する連携体制を築きました。
発覚までの時間は数日から最大24時間へ短縮しました。発生自体の抑止は連携体制の側で対応し、技術による早期検知と体制による事前予防の二層構成としました。数十名規模のメンバーへ導入手順とテストケース作成方法を伝授し、自動検知は累計100件以上のプロジェクトに採用されました。導入を希望した案件へ有償で提供し(現在は終了)、品質保証の手法として定着しました。その後の運用は後任へ引き継いでいます。
棚割りシステムのフロントエンド開発を4名体制でリードしました。自社のウクライナ現地法人のメンバー2名と、日本在住の外国籍メンバー1名を含む体制です。開発は1ヶ月ごとに実装する機能を定義して進めるアジャイル型で、仕様の受け渡しは最初の一度ではなく毎月発生します。拠点の間には時差があり、言語も異なります。仕様の認識のずれは店舗スタッフが毎日使う画面の品質にそのまま跳ね返ります。
日本の夕方とウクライナの朝が重なる時間帯に日次ミーティングを置き、時差のある体制での同期点を確保しました。伝達手段は内容の重要度で使い分けました。
| 層 | 手段 | 使う場面 |
|---|---|---|
| 正式 | 通訳(現地法人の日本人スタッフ) | 仕様など、認識のずれが品質に直結する内容 |
| 日常 | 翻訳ツールを介したテキスト | 通訳を挟むと速度が落ちる細かなやり取り |
| 補完 | 図・チャート | 言語に依存しない伝達 |
期間中に現地メンバーが拠点移動のため3ヶ月間離脱しました。日本側メンバーへの応援要請で体制を組み直し、1ヶ月ごとの開発サイクルを維持したまま全20画面を予定どおりリリースしました。言葉の壁をその都度しのぐのではなく、起きた問題を手がかりに伝達手段を内容ごとに決めて仕組みにする。この設計で国をまたぐ体制を2年4ヶ月にわたって回しました。
取引仲介システムの開発にフェーズ1の途中から参画し、技術責任者の役割を引き継ぎました。エンジニアは3名のプロジェクトリーダーの下に分かれ、ラインごとに実装を進める体制です。共通化の考え方はあったものの、技術責任者が不在だった期間に各ラインの実装はばらつき始めていました。このままでは同じ役割の部品がラインごとに作られ、管理が二重三重になります。書き方や仕様の解釈もラインごとに分かれ、150画面の業務システムではそのずれがそのまま保守の負担になります。
要件定義の画面仕様と機能仕様をもとに、共通化するものと各ラインに任せるものの境界を定めました。共通化の対象は共通部品・ディレクトリ構成・コーディング規約・設計ドキュメントです。権限による表示と操作の制御、操作ログと監査ログの出力も共通の仕組みにしました。ここがラインごとにずれると情報漏洩や規制上の問題に直結するためです。参画時点ですでにラインごとに作られていた重複部品は、残せば負債になると判断しました。進捗が予定より先行していた期間を使って共通化しました。
APIは証券会社側の基盤がSOAPで提供しており、このアプリケーション向けの定義も日々追加されます。そこでWSDLから型を自動生成する方式にしました。追加のたびに手作業で実装する人的コストを避け、ラインごとの解釈のずれも防ぐためです。認証情報の付与・タイムアウト・エラーの変換を含む呼び出し処理も共通化しています。
方針はプロジェクトリーダー3名との週次の定例で進捗や課題とあわせて共有し、合議で決めています。技術面は私の判断を軸にしつつ、エンジニアやプロジェクトリーダーからの良い提案は取り入れて方針を更新してきました。
参画直後にはラインごとのばらつきを直す作業がありました。共通化の後はその作業がなくなり、その分の工数が減っています。コーディング規約をそろえたことで、レビューで書き方の違いを指摘することも減りました。途中から引き継いだ開発でも仕様から共通化の境界を引き直し、その上で部品と書き方を統一する。この順序で3ラインの実装を一つの設計にそろえました。
サーバー間の通信の変換から始まり、Webサイトをサーバー側とブラウザ側の2つの方法で変換する基盤を経て、2022年からはスクラッチ開発に移りました。スクラッチ開発では、担当範囲をフロントエンドからバックエンドへ広げています。
開発手法:1ヶ月のサイクルで実装する機能を定義して進めるアジャイル開発を経験しています。
| 時期 | 方式 | 技術 |
|---|---|---|
| 2012 以前 | サーバー間の通信を変換(ゲートウェイ)前職 | Perl |
| 2012 – 現在 | サーバー側で変換(自社製・プロキシ型)チケット販売サイト | SmartConvert / HTML / CSS / JavaScript / XPath |
| 2016 – 2020 | 品質保証の自動化導入を希望した最適化プロジェクト(現在は後任に引き継ぎ済み) | Selenium |
| 2017 – 2022 | ブラウザ側で変換(自社製・JavaScript型)小売グループEC改善 | flamingo / HTML / CSS / JavaScript / XPath |
| 2022 – 現在 | スクラッチ開発棚割り・不動産・証券 | TypeScript / React / Next.js / Node.js / AWS |
| 案件 | 担当範囲 |
|---|---|
| 棚割りシステム | フロントエンド(インフラは専任者) |
| 不動産業務システム | フロントエンド(PMを兼務) |
| 証券取引仲介システム | フロントエンド → 現在はバックエンドもNode.js / AWS(Cognito・ECR・EC2・App Runner・Route 53・ALB) |
Webエンジニア。新卒で入社したソフトウェア会社で、サーバーごとに異なる独自のプロトコルを変換して通信させるゲートウェイを約3年開発したのち、2012年に受託開発企業のi3DESIGNに入社しました。
i3DESIGNでの最初の10年は、他社のWebサイトに手を加えずに外側から最適化する仕事でした。既存のシステムの間や外側に立ち、壊さずに変換してつなぐ。前職のゲートウェイも含めて、それが私のキャリアの出発点です。2022年からはスクラッチ開発に移り、技術選定を担う立場で数万人規模のものを含む業務システムの開発に関わっています。小売の分野では、ECサイトと店舗の棚割り業務の両方を経験しました。
一般には技術を深めてからマネジメントへ進むと言われますが、私の順序は逆でした。技術が製品側で決まっている環境で、先に人と進行をリードする経験を積み、その後に技術選定の裁量が加わりました。決められた制約の中で人を動かして成果を出すことが、私の仕事の土台です。