hirossyu

キャリアビジョン


AIソロプレナーとして個人の力で生活できるレベルの不労所得を得ながら、週3程度趣味エンジニアとして働く

昔から個人の力で生きて行きたいという願望がありましたが、元ヤフー社長の川邊健太郎氏がおっしゃるように現在はAIソロプレナーとしてそれが充分実現可能な世界であると感じるため。 また自身の年齢や体力、出社回帰の情勢などを鑑みると定年まで働くことへの可能性や価値を考えられないため。 ただ、そのように強く感じたのはここ半年でこれまで入ってきたお金を全て使う生活をしてきたため、しばらくは社会人としてしっかり稼ぎたいと思っています。 【転職希望条件】 ▪️名古屋(名古屋駅からも距離あり)在住のため、基本的にフルリモート・スーパーフレックスでの勤務希望です(月一程度であれば出社可能)。 ▪️年収UP(現在の780万円(昨年源泉徴収額)から最低でも100万円単位) 現職での出社回帰や(年収にも影響するような)固定費削減名目での数多のコストカットを受けての転職検討のため上記はマストとさせて頂きます。もちろん現職でも良いところは多数あるため(社内開発環境が充分に整備されている・良い人が多い・残業0・有休消化率100%など)、それらも踏まえて考慮したいと考えています。 職種としては現職としてはエンジニアの詳細なポジション(SRE等)は分けられておらず求められれば何でもやる感じですが、安定稼働・運用を何より重視する部署にいるためSREとさせて頂いています。 興味のある分野としては業務経験はありませんが、個人でのkaggleやEA開発を通して数値改善サイクルを回す楽しさを感じており、学生時代の研究分野である自然言語処理などにまた挑戦したい気持ちもあります。

プロジェクト経験

2021年/2年以上

画像変換プラットフォームの開発・運用

## プロジェクト概要 画像の拡大・縮小・切り抜き処理を行い、生成した画像を配信する社内向けプラットフォームの開発・運用を担当しました。 Web APIおよびクライアントライブラリを提供しており、旧システムからの移行/LINE株式会社とヤフー株式会社の統合に伴う基盤統合などを行っています。 --- ## 担当内容 ### 基盤統合・移行対応 - LINE株式会社とヤフー株式会社の統合に伴う基盤統合 - 旧システムからの移行に伴う内部処理の修正 - 既存利用者の移行管理 - 基盤統合と日常運用を並行した移行対応 ### 設計・開発 - 高負荷PoCへの処理集中を踏まえたシステム構成の見直し - オリジナル画像取得機能の分離設計 - 機能分離に伴う開発 - 移行スケジュールの管理 - Web APIおよびクライアントライブラリの開発・保守 ### 関係チームとの協業 以下の関連チームと連携しながら、要件確認や役割分担、移行対応を進めました。 - CDNチーム - LINE Plusの韓国チーム ### 運用・監視 - Prometheusを用いた監視 - アラート発生時の調査・対応 - 負荷状況に応じたスケール調整 - 既存システムの日常運用 --- ## 工夫した点 ### 既存利用者への影響を抑えた移行 基盤統合と日常運用を並行して進める必要があったため、既存利用者への影響を意識しながら、内部処理の修正や利用者移行を段階的に進めました。 ### 処理集中を踏まえた構成の見直し 高負荷PoCに処理が集中していたため、関連する処理や役割を整理し、機能を分離しやすいシステム構成への見直しを進めました。 ### 複数チームとの調整 複数の国内外チームが関係するため、それぞれの担当範囲や依存関係を確認しながら、開発および移行スケジュールを調整しました。 --- ## このプロジェクトで経験したこと - Node.jsを用いたバックエンド開発 - Docker・Kubernetes環境でのサービス運用 - Prometheus・Splunkを用いた監視と障害調査 - 負荷状況に応じたスケール調整 - 既存システムから新システムへの移行対応 - 機能分離を伴う設計・開発 - 複数チームとの連携およびスケジュール調整

2021年/2年以上

画像の入稿・配信プラットフォームの開発・運用

## プロジェクト概要 システムに入稿された画像などの静的ファイルを配信する、社内向けプラットフォームの開発・運用を担当しました。 入稿フローの自動化、次世代ストレージの技術検証、契約終了を見据えた新配信プラットフォームへの移行検討などに取り組みました。 --- ## 担当内容 ### 入稿作業の自動化 - GitHubへのアップロードを契機に入稿できる、自動入稿テンプレートを作成 - 入稿対象ファイルのバージョン管理に対応 ### 次世代ストレージの技術検証 社外アプライアンス型ストレージの後継候補となる、次世代ストレージの選定と技術検証を担当しました。 - 配信プラットフォームからの接続・利用方法を検証 - 既存ストレージとの機能や運用方法の違いを確認 - 移行後の構成や運用を想定した技術調査を実施 ### 新配信プラットフォームの検討 既存ストレージの契約期限と、新しい配信プラットフォームに求められる要件の両方を考慮し、移行方針を検討しました。 - 契約期限を踏まえた移行スケジュールの整理 - 現行システムの要件と新環境の仕様を比較 - 移行時の影響やリスクを考慮した構成検討 ### 新旧システムの差分監視 新旧配信システムのレスポンスを30分ごとに比較し、差分を検知する仕組みを構築しました。 - 新旧システムから同一ファイルを取得 - レスポンス内容の差分を定期的に確認 - 不整合が発生した場合に検知できる監視を実装 - 切り替え前の動作確認を自動化 --- ## 工夫した点 ### 入稿作業を再現可能なフローに変更 GitHubを起点とした入稿テンプレートを作成することで、作業手順を標準化しました。 ファイルをバージョン管理できるようにし、誰がどの変更を入稿したのかを追跡しやすい運用にしました。 ### 契約期限とシステム要件を考慮した検討 単純なストレージの置き換えではなく、既存契約の終了時期と、新しい配信プラットフォームに必要な機能・運用要件を整理しながら移行先を検討しました。 ### 切り替え前のリスクを低減 新旧システムのレスポンスを定期的に比較することで、切り替え後に問題となる可能性がある差分を事前に検知できるようにしました。 --- ## 成果 - GitHubを利用した入稿作業の自動化 - 入稿対象ファイルのバージョン管理を実現 - 次世代ストレージ候補の選定および技術検証を実施 - 新配信プラットフォームへの移行方針を検討 - 新旧システムの差分確認を自動化 - 切り替え前に不整合を検知し、リリースリスクを低減

2018年/2年以上

IP判定/データ作成プラットフォームの開発・運用

## プロジェクト概要 IPアドレスからアクセス元の国・地域を判定する、社内向けプラットフォームの開発を担当しました。 本プラットフォームは、以下の2つのシステムで構成されています。 1. IPアドレスから国・地域を判定するWeb API 2. 判定に使用するIPアドレスレンジと国・地域コードのデータを生成・提供するシステム --- ## 1. IPアドレス判定Web API ### システム概要 従来はC++・PHP向けライブラリとして提供されていた、IPアドレスから国・地域を判定する機能を、Web APIとしてCaaS環境上に構築しました。 ### 担当内容 #### Web APIの開発 Web API開発の主担当として、Node.jsを用いて判定処理を実装しました。 判定処理は、以下の流れで行います。 1. IPアドレスレンジと国・地域コードがKey-Value形式で格納されたバイナリファイルをメモリ上に展開 2. リクエストで指定されたIPアドレスを受け取る 3. 二分探索によって対象のIPアドレスレンジを検索 4. 対応する国・地域コードを返却 #### CI/CDの構築 判定に使用するバイナリファイルが毎月更新されるため、最新データを含むDockerイメージを月次で自動作成するCI/CDを構築しました。 あわせて、CI/CDの処理内で利用する内部APIの開発も担当しました。 #### 負荷試験 Locustを用いて、想定最大負荷である**70,000rps**にWeb APIが耐えられるかを検証しました。 負荷試験を通じて、レスポンスタイムやエラーの発生状況、各コンポーネントのリソース使用状況を確認しました。 --- ## 2. 国・地域コード関連データの生成システム ### システム概要 IPアドレスレンジと国・地域コードの対応データを、MaxMind DB形式などで生成・提供するシステムを構築しました。 生成したデータは、IPアドレス判定Web APIや関連システムから利用されます。 ### 担当内容 #### 旧システムの解析 新システムを構築するにあたり、C++で実装されていた旧システムの処理を調査・解析しました。 既存ロジック、入出力データ、データ生成手順を整理し、新システムへ移行するために必要な仕様を確認しました。 #### データ生成ジョブの構築 MaxMind DB形式のデータなどを生成するジョブシステムを構築しました。 - Perl・Node.jsでデータ生成スクリプトを実装 - 各スクリプトをDockerイメージ化 - 社内のジョブ実行基盤上で月次実行 - 生成したデータを関連システムへ提供 --- ## 工夫した点 ### 高速なIPアドレス判定 リクエストごとに外部ストレージへアクセスするのではなく、判定用のバイナリファイルをメモリ上に展開し、二分探索を行う構成としました。 これにより、高いリクエスト数を想定した環境でも高速に判定できるようにしました。 ### 月次更新作業の自動化 判定データの更新にあわせて、Dockerイメージの作成やデータ生成ジョブを月次で自動実行できる仕組みを構築しました。 定期的に発生する更新作業を自動化することで、作業漏れや手作業によるミスを抑えました。 ### 旧システムからのロジック移行 ドキュメントだけでは把握できない既存仕様について、C++で実装された旧システムのコードや生成データを確認しながら整理しました。 既存システムとの互換性を意識しつつ、新しい実行環境に合わせて処理を再構築しました。 --- ## 成果 - C++・PHP向けライブラリとして提供されていたIP判定機能をWeb API化 - Node.jsによるIPアドレス判定処理を実装 - 想定最大負荷70,000rpsを対象とした負荷試験を実施 - 月次のデータ更新とDockerイメージ作成をCI/CDで自動化 - C++で動作していた旧システムのロジックを解析 - MaxMind DB形式などのデータを生成する月次ジョブを構築 - データ生成スクリプトをDocker化し、社内ジョブ基盤上で運用

2018年/2年以上

ユーザー情報の取得/更新を行うWeb APIを提供するプラットフォームの開発・運用

## プロジェクト概要 ユーザーIDに紐づくデータを、社内の内製データベースから取得・更新するWeb APIを提供するプラットフォームです。 別チームが開発・運用していたシステムを引き継ぎ、既存APIの運用、機能追加、リファクタリング、不具合対応などを担当しました。 --- ## 担当内容 ### Web APIの改修・運用 Node.jsで実装されたWeb APIについて、以下の対応を行いました。 - 新規機能の追加 - 既存処理のリファクタリング - 不具合の調査・修正 - 引き継ぎ後の保守・運用 - 内製データベースとの連携処理の改修 ### 暗号化モジュールの改修 内製データベースに保存する一部のデータには、暗号化・復号化処理が必要でした。 暗号化処理には、外部で開発されたNode.jsのネイティブ拡張モジュールを使用していましたが、文字コードの問題により、一部の文字を正常に変換できない不具合がありました。 この問題への対応を主担当として行い、以下を実施しました。 1. 暗号化・復号化できない文字と発生条件を調査 2. Node.jsとネイティブ拡張モジュール間の文字列変換処理を確認 3. C++で実装された拡張モジュールを改修 4. 対象の文字を含むデータでも暗号化・復号化できることを検証 ### ESLintプラグインの開発 複数のリクエストを同時に処理した際、モジュールスコープの変数が意図せず共有・更新される不具合が発生しました。 同様の問題をコードレビューだけで防ぐことが難しかったため、モジュールスコープで変数が宣言された際に、実装者へ確認を促す独自のESLintプラグインを開発しました。 - モジュールスコープの変数宣言を静的解析 - 意図しないリクエスト間の状態共有につながる実装を検出 - 該当コードに対して警告を表示 - 同種の不具合を開発段階で発見しやすい仕組みを整備 --- ## 工夫した点 ### 引き継いだシステムの理解と段階的な改善 別チームから引き継いだシステムであったため、既存コードや運用手順を確認しながら、影響範囲を把握したうえで改修を進めました。 既存機能を維持しながら、機能追加、不具合修正、リファクタリングを段階的に行いました。 ### Node.jsとC++をまたぐ問題への対応 文字コードの問題について、Node.js側の処理だけでなく、C++で実装されたネイティブ拡張モジュールまで調査しました。 言語間のデータ変換を含めて原因を確認し、既存の暗号化仕様を維持したまま、扱える文字の範囲を広げました。 ### 不具合を個別修正で終わらせない仕組みづくり モジュール変数に起因する不具合について、該当箇所を修正するだけでなく、類似した実装を静的解析で検知するESLintプラグインを作成しました。 これにより、同種の問題を実行時ではなく、実装・レビューの段階で発見しやすくしました。 --- ## 成果 - 引き継いだWeb APIの機能追加・保守・不具合対応を継続 - Node.jsネイティブ拡張モジュールの文字コード問題を調査・改修 - 従来変換できなかった文字を含むデータの暗号化・復号化に対応 - モジュールスコープの変数利用を検知するESLintプラグインを開発 - 複数リクエスト間で状態が意図せず共有される不具合の再発防止を実施

2017年/2年以内

競馬ソーシャルゲームの開発・運用

## プロジェクト概要 エンターテインメント事業本部のイベント班に所属し、ソーシャルゲーム「ダービーインパクト」のバックエンド開発を担当しました。 ゲーム内イベントの開発・リリースを中心に、データベース設計、機能実装、デバッグ、運用効率化のための管理ページ開発などを行いました。 --- ## 担当内容 ### ゲーム内イベントの開発 1〜2週間程度のサイクルで実施されるゲーム内イベントについて、バックエンド側の開発を担当しました。 - イベント仕様に基づくサーバー処理の実装 - イベント用データの設計 - データベースレコードの設計・追加 - 動作確認およびデバッグ - リリースに向けた調整・対応 ### データベース設計・機能開発 イベント機能の実装にあわせて、MySQLのテーブルやレコード構成を検討し、必要なデータを管理できるように設計しました。 PHPやC#を用いて、ゲーム内イベントに必要なバックエンド機能の開発・改修を行いました。 ### 管理ページの開発・改修 繰り返し実施される施策について、毎回コードを変更せずに設定できるよう、運用担当者向けの管理ページを開発・改修しました。 - イベント内容やパラメータを画面上から設定できる機能の追加 - 再利用性の高い施策の設定作業を簡略化 - コード変更を伴わない運用フローへの改善 - 運用時の作業負担や設定ミスの軽減 --- ## 工夫した点 ### 短い開発サイクルへの対応 1〜2週間程度のサイクルでイベントを継続的にリリースする必要があったため、仕様確認、設計、実装、デバッグを限られた期間内で進めました。 既存機能への影響を確認しながら、リリーススケジュールに合わせて開発を行いました。 ### 再利用しやすい運用方法への改善 同様の施策を実施するたびにコードを変更するのではなく、管理ページから設定できる仕組みを整備しました。 これにより、開発者による改修が不要な施策を増やし、イベント運用を行いやすくしました。 ### 企画・デザイン・開発メンバーとの連携 リーダー、プランナー、デザイナー、各エンジニアで構成された15〜20名程度のチームで開発を行いました。 イベント仕様や必要なデータについて関係メンバーと確認しながら、バックエンド側の設計・実装を進めました。 --- ## 成果 - 1〜2週間程度のサイクルでゲーム内イベントを継続的に開発・リリース - イベント機能に必要なデータベース設計、機能開発、デバッグを担当 - 再利用性の高い施策を管理ページから設定できるように改善 - イベント実施時のコード変更や運用作業を削減 - 複数職種で構成されるチームでのゲーム開発を経験 --- ## プロジェクト情報 - **期間:** 2017年4月〜2018年8月 - **役割:** バックエンドエンジニア - **チーム規模:** 15〜20名程度 - **チーム構成:** リーダー、プランナー、デザイナー、各エンジニア

マネージメント能力

アピール項目


アウトプット

GitHub アカウント
未入力です
Qiita アカウント
未入力です
Zenn アカウント
未入力です
Speaker Deck アカウント
未入力です
SlideShare アカウント
未入力です
特にアピールしたいアウトプット
未入力です

今後、身につけなければいけないと思っている技術は何ですか?

自身の成果物をマネタイズする力 自分が最も得意とすることを活かせる場所に身を置く力

あなたが一番パフォーマンスを出せるのはどんな環境ですか?

ある程度優秀かつ良い人がいるチームで、基本的には対外折衝なしにフルリモートで働ける環境

生成AIの活用状況

日常的な情報収集・業務活用
ChatGPTやGeminiなどのチャットツールを、情報収集、ドキュメント作成、翻訳に日常的に活用
業務でコード補完系の生成AIを活用
GitHub Copilot等のコーディング支援ツール
業務でコード生成、コーディングエージェント系の生成AIを利用
コードレビュー、テストコード生成、デバッグに生成AIを活用
サービス・プロダクトへの応用
既存のサービスやプロダクトに生成AI(API利用など)を組み込み、LangChainやLlamaIndexなどのフレームワークを使った開発経験

キャラクター

直近で一番やりたいこと
現場にいたい
好きなスタイル
一人で黙々
どちらかといえば一人で黙々
どちらともいえない
どちらかといえばみんなでワイワイ
みんなでワイワイ
好きな規模
小さい会社
どちらかといえば小さい会社
どちらともいえない
どちらかといえば大きい会社
大きい会社
自信を持って人より秀でていると言える点
学習能力 / 分析力 / 問題解決力
スキルのタイプ
ゼネラリスト
どちらかといえばゼネラリスト
どちらともいえない
どちらかといえばスペシャリスト
スペシャリスト
得意なフェーズ
0 → 1
どちらかといえば0 → 1
どちらともいえない
どちらかといえば10 → 100
10 → 100
会社を選ぶ一番の基準
プライベートとの両立
やりたくない分野
医療・介護 / 人材 / アダルト
その他の特徴
未入力です
その他のやりたいこと・やりたくないこと

お客さんとの折衝など話す相手がころころ変わるような仕事

やりたい事

手を動かして設計してコードを書きたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
価値あるプロダクトを作り成長させたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
学び続けて技術力でプロダクトに貢献したい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
意義があることや社会に貢献できる仕事がしたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
人や計画の調整・マネジメントをしたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
レガシーなシステムの保守・運用・改善をしたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
企画や仕様を考えるところから関わりたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
業務効率を改善して一緒に働く人のためになりたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
全社横断的な共通基盤作りや強化をしたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
組織や文化を作る・成長させる仕事をしたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい

基本プロフィール

年齢
今年で30代中盤
好きなテキストエディタ
Intelli J
希望勤務地
愛知県 / リモート勤務
常時リモートが必要
希望年収
1000万円
ご意見箱

要望、不具合報告、使いづらい点や感想など、お気軽にお寄せください。
いただいたご意見は、今後のサービス向上に活用させていただきます。

なお、このフォームは受付専用のため、返信を行っておりません。
返信を希望する場合はお問い合わせよりご連絡ください。

  • {{error}}
転職ドラフトを友人や同僚に薦める可能性はどのくらいありますか?