䞉奜翔倪の職務経歎曞

䞉奜翔倪の職務経歎曞

View the Project on GitHub barleytea/barleytea

📄 職務経歎曞


📝 職務芁玄

2017 幎より゜フトりェア゚ンゞニアずしお、グルヌプりェア・医療/補薬向け Web サヌビス・東急カヌドポむントサむトの開発に埓事。 Java/SpringからGoたで䞀貫しおバック゚ンドを担圓し、決枈基盀の導入・勀怠蚈算モゞュヌルの保守性改善・倜間バッチ基盀のれロからの蚭蚈など、 業務敎理を䌎う䞊流工皋から実装たでを担っおきた。 集蚈凊理の 50% 高速化などの改善実瞟を持ち、珟職では東急カヌドポむントサむトの内補化に向けたバック゚ンド開発に埓事。 盎近ではGitHub Copilot / Claude Codeを開発パヌトナヌずしお掻甚し、調査・蚭蚈・実装・ドキュメンテヌションを効率化しおいる。


👀 基本情報

項目 内容
氏名 䞉奜 翔倪
生幎月 1994幎6月
居䜏地 神奈川県
最終孊歎 千葉倧孊 文孊郚 行動科孊科

🛠 掻かせる経隓・スキル

カテゎリ 技術 経隓幎数の目安 レベル感
蚀語 Java 箄7幎 蚭蚈・実装・テストを䞻導
蚀語 Go 箄2幎 バッチ・CLI ツヌルを蚭蚈・実装
蚀語 TypeScript / JavaScript 箄5幎 FE 連携・スクリプト
フレヌムワヌク Spring Boot / Spring Framework 箄7幎 実務の䞭心
デヌタベヌス PostgreSQLAurora含む 箄5幎 蚭蚈・チュヌニング
デヌタベヌス MongoDB 箄5幎 ク゚リ最適化
デヌタベヌス Oracle / BigQuery 箄2〜5幎 運甚・分析
むンフラ AWSマネヌゞドサヌビス 箄1幎 バッチ基盀を蚭蚈・構築
むンフラ GKE / Docker / Cloud Pub/Sub 箄5幎 運甚・コンテナ化
BI・分析 Metabase / Looker 箄3幎 運甚・改善
開発・運甚 Git / CI/CDCircleCI / Jenkins等/ gRPC 箄7幎 日垞的に掻甚
AI 開発支揎 GitHub Copilot / Claude Code 箄1幎 調査・蚭蚈・実装・ドキュメント生成を効率化

💌 職務経歎詳现

💳 東急カヌドポむントサむト「Tokyu Plus」のリプレむス・内補化 @東急株匏䌚瀟

補品抂芁:
東急カヌド䌚員向けポむントサむトTokyu Plus。倖郚ベンダ補の既存サむトを、段階的な内補化を目的にリプレむス䞭。

項目 内容
雇甚圢態 正瀟員
圚籍期間 2025幎3月 〜 珟圚

🛠 技術スタック

カテゎリ 技術
蚀語・フレヌムワヌク Go
デヌタベヌス PostgreSQLAWS Aurora
むンフラ・クラりド AWS

🎯 䞻な取り組み

※珟職に぀き詳现は蚘茉を控えおいたす。


🏥 医療者/補薬䌁業向け Web サヌビスの機胜匷化・保守運甚等 @Dr.JOY株匏䌚瀟

補品抂芁:
医療機関の「働き方改革」を支揎するコミュニケヌションむンフラ。勀怠管理システムをはじめ、業者管理機胜や地域連携機胜などの機胜を持぀。医療機関ず補薬䌁業間のコミュニケヌションを円滑化する圹割も担っおいる。

項目 内容
雇甚圢態 正瀟員
圚籍期間 2020幎2月 〜 2025幎2月
チヌム芏暡 PM/PjM: 1人、BE: 1人私、FE: 1〜3人ベトナム

🛠 技術スタック

カテゎリ 技術
蚀語・フレヌムワヌク Java, Spring Boot, TypeScript, AngularJS, Go
デヌタベヌス MongoDB, PostgreSQL, BigQuery
むンフラ・クラりド GKE, Cloud Pub/Sub, Firebase
BI・分析 Metabase, Looker
開発・運甚 Git, IntelliJ, CircleCI, DroneCI, gRPC, Docker, JUnit

🎯 䞻な実瞟・取り組み

💳 1. サヌビス有料化に際しお Stripe を導入し、サブスクリプションを管理する基盀を敎えた

🔍 課題:

クレゞットカヌド支払いによるサブスクリプション方匏でのサヌビス有料化を行うにあたり、決枈機胜を具備する必芁があった。

🛠 斜策:

  1. 決枈管理 SaaS ずしお Stripe を導入した
    1. Zuora, GMO Payment Gateway ず比范怜蚎しお、費甚面ずサブスクリプション蚭定の柔軟さから Stripe に決定した
  2. ビゞネスサむドメンバヌずサブスクリプションのサむクルや料金に぀いお擊り合わせを繰り返し、Stripe 䞊での料金・サブスクリプション蚭定を決定
  3. Stripe API を利甚しお決枈基盀を実装した
  4. 運甚メンバヌずの擊り合わせを行い決枈倱敗時の察応フロヌ等を策定した
    1. 決枈倱敗者芁察応者情報を自動で収集するために SpreadSheet + GAS で仕組み化を行った

✅ 成果: Stripe を甚いた決枈・サブスクリプション管理基盀を構築し、サヌビスの有料化を実珟した。

⚡ 2. 勀怠機胜の蚈算コアモゞュヌルを改善可胜な状態にした

🔍 課題:

参画時点で勀怠機胜の蚈算コアモゞュヌル呚りは䞋蚘のような状況であった。

  1. 仕様を把握しおいるメンバヌが䞍圚蚭蚈・実装者は退職枈み
  2. 月間の出勀簿画面䞊から実際に1ヶ月分の勀務予定・実瞟・残業申請等を入力するこずでしか蚈算結果を確認できず、修正→テスト結果確認のサむクルが䜎速

その䞭で䞋蚘のような察応が必芁ずされたが、リグレッションの発生を怜知したり圱響範囲を特定したりするこずが困難な状況であった。

  1. 運甚䞭のナヌザヌから蚈算誀りを指摘された際の修正察応
  2. 裁量劎働制、倉圢劎働制等ぞの察応

🛠 斜策:

  1. UnitTest の敎備
    • 珟状の挙動を把握するためにパブリックな蚈算メ゜ッドに察しお JUnit でテストコヌドを付加した
      • → リグレッションを怜知可胜になった
  2. ビゞネスサむドメンバヌぞの確認䟝頌フォヌマットを策定
    • 䞊蚘 UnitTest 実行時、勀務予定・実瞟・申請等の条件ず蚈算結果を統䞀フォヌマットで暙準出力ぞ吐き出すようにした
      • → SpreadSheet に貌り付けるこずでビゞネスサむドのメンバヌぞの確認䟝頌をスムヌズに行うこずができるようになった

✅ 成果: UnitTest を敎備しおリグレッションを怜知可胜にし、蚈算ロゞックの改修・確認サむクルを高速化した。

📊 3. PDF 垳祚出力甚の共通モゞュヌルを蚭蚈・実装した

🔍 課題:

Dr.JOYでは勀怠管理サヌビス䞊で Excel 圢匏の垳祚を出力できる機胜がすでに具備されおいた。 しかし病院偎ですでに䜿甚しおいる垳祚フォヌマットに則っお PDF 圢匏で出力したいずいう芁望が䞊がっおおり、 ナむヌブに蚭蚈するず導入斜蚭が増えるたびに PDF フォヌマットを䜜成する必芁があり、匊瀟の゚ンゞニアリ゜ヌスでは䞍足しおしたうず考えられた。

🛠 斜策:

  1. SVF ずいう垳祚䜜成 SaaS を導入した
    • 垳祚デザむンを非゚ンゞニアでも䜜成でき、コンポヌネント化するこずで導入斜蚭ごずのマむナヌチェンゞぞの察応も容易
  2. SVF API に勀怠デヌタを投入する Interface を実装した
    • 投入する各勀怠デヌタ蚈算を実装するのはベトナム子䌚瀟の゚ンゞニアになる予定であり、圌ら/圌女らが SVF 偎の事情を考慮しなくお枈むようにモゞュヌルを䜜成した
    • 党く異なる皮類の垳祚を実装する堎合でも、Marker Interfaceを実装したBeanを䜜成し必芁なフィヌルドを定矩するだけでデヌタを SVF API に投入できるよう実装した
      • 勀務管理簿、䌑暇管理簿等、etc

✅ 成果: 垳祚の远加をBean定矩だけで完結できる共通モゞュヌルを実装し、導入斜蚭の増加に䌎う垳祚䜜成の゚ンゞニア負荷を抑えた。

📈 4. BI ツヌルの運甚改善を行った

🔍 課題:

前任者の退職に䌎い、Metabase ずいう BI ツヌルの運甚を匕き継いだ。Metabase は GKE 䞊に構成されおおり、デヌタ゜ヌスずしおは PostgreSQL を利甚しおいた。

サヌビスで利甚しおいる MongoDB から BI 甚の PostgreSQL ぞの ETL Job も GKE 䞊で実行されおいたが、䞋蚘のような課題が発生しおいた。

  1. 毎日党レコヌドを察象にしおいたため、デヌタ量の倚いコレクションでは頻繁にタむムアりトが発生しおいた
  2. 䞊蚘に䌎い実行時間が非垞に長くなっおおり10時間皋床深倜に実行開始しおも翌日の業務開始たでに凊理が完了せず、ビゞネスサむドのメンバヌの業務に支障をきたしおいた
  3. ETL が倱敗した堎合に個別にコレクションをリカバリしたり、PostgreSQL のパラメヌタを調敎したりする䜜業が頻繁に発生し、私の業務を逌迫し぀぀あった

🛠 斜策:

  1. 圧倒的にデヌタ量が倚い勀怠サヌビス関連のコレクションを別個の ETL で凊理するように倉曎した
  2. その䞭でも特にデヌタ量が倚く頻繁にタむムアりトしおいたコレクションに぀いおは3分割しお投入するように倉曎した
    • ビゞネスサむドのメンバヌが䞻に必芁ずするのは勀怠サヌビスのデヌタ以倖の郚分であったため、圌ら/圌女らの業務ぞの支障を取り陀くこずはできた

✅ 成果: デヌタ量の倚い勀怠系コレクションを分離し分割投入するこずで ETL のタむムアりトを解消し、ビゞネスサむドの業務ぞの支障を取り陀いた。

⚡ 5. アクティブナヌザヌデヌタ集蚈ツヌルの速床改善ず手順の簡玠化を行った

🔍 課題:

前任者の退職に䌎い、月次のアクティブナヌザのデヌタを集蚈する業務を匕き継いだ。前任者が䜜成した集蚈ツヌルを利甚しお䜜業するが、䞋蚘のような状況のため他の業務に支障をきたしおいた。

たた、集蚈ツヌルから出力された tsv ファむルをビゞネスサむドのメンバヌが SpreadSheet + GAS で加工しお最終的な成果物を䜜成する手順ずなっおおり、圌の業務も逌迫しおいた。 さらに、ナヌザヌ数の増加に䌎い、SpreadSheet で扱えるレコヌド数の限界を迎え぀぀あり、早急に察応が必芁であった。

🛠 斜策:

  1. 䜙分なデヌタをダりンロヌドしおいた箇所を取り陀いた
  2. 集蚈ごずに動的に JavaScript を生成しお実行する圢だった集蚈凊理郚分を Go で再実装し、コマンドラむンツヌルのバむナリずしお配垃可胜な圢にした
  3. MongoDB のク゚リのパフォヌマンスを改善した
    • lookupの凊理がボトルネックずなっおいる郚分が倚かった。そこでメモリ利甚量が増えるこずは承知の䞊、集蚈アプリケヌション偎でjoin盞圓の凊理を行うように倉曎した
  4. コマンドラむンツヌルで最終成果物たで䜜成するようにした
    • テスト可胜性、及び他のメンバヌが個人で䜜成しおいたツヌルずの互換性のためにこれたで出しおいた tsv ファむルも䞭間成果物ずしお出力するようにした
  5. 実行環境をコンテナ化しmakeコマンドだけで䜜業を完結できるようにし、䜜業の匕き継ぎを容易にした

✅ 成果: 凊理時間を 4時間 → 2時間50%削枛 に短瞮ロヌカル DB ぞのデヌタむンポヌト1.5時間、集蚈凊理10分。


💻 グルヌプりェアシステムの新機胜開発・䞍具合修正 @ワヌクスアプリケヌションズ

補品抂芁:
Ariel AirOne Enterprise for Companyずいうオンプレのサヌバにむンストヌルしお利甚するグルヌプりェア。スケゞュヌル・タスク管理やファむル管理等グルヌプりェアずしおの必須機胜はもちろん、ワヌクフロヌ等のモゞュヌルをナヌザ偎でカスタマむズできる柔軟性が特城。

プロゞェクト抂芁:
PG ずしおスケゞュヌル管理・タスク管理・ファむル管理モゞュヌルを䞭心に、機胜远加・䞍具合修正を実斜した。

項目 内容
雇甚圢態 正瀟員
圚籍期間 2017幎4月 〜 2019幎7月
チヌム芏暡 PG: 8〜10人私、QA: 4〜10人、CS: 10〜15人、コンサル: 20〜25人

🛠 技術スタック

カテゎリ 技術
蚀語・フレヌムワヌク Java, Spring Framework, JavaScript
デヌタベヌス Oracle 11g
開発・運甚 Subversion, IntelliJ, Jenkins, Junit

🎯 䞻な実瞟・取り組み

🕒 1. タむムゟヌン問題を改善

🔍 課題:

Ariel AirOne Enterprise ずいう補品には次の4぀のタむムゟヌンの抂念が別々に存圚しおいた。さらに機胜ごずにこれらの適甚優先床がたちたちであるため、時刻呚りの䞍具合が倚発しおしたっおいた。

  1. オンプレサヌバに導入するタむミングで蚭定されるタむムゟヌン
  2. 管理者アカりントで蚭定できる、テナント単䜍のタむムゟヌン
  3. 䞀般アカりントで蚭定できる、個人単䜍のタむムゟヌン
  4. スケゞュヌル・タスク機胜においお、各スケゞュヌル・タスクリ゜ヌスに割り圓おられるタむムゟヌン

🛠 斜策:

  1. 時刻線集時・衚瀺時の䞍具合がナヌザビリティを倧きく損なうず思われる、スケゞュヌル・タスク機胜にたずはスコヌプを絞っお䞍具合チケットを収集した
  2. 各䞍具合チケットに぀いおそもそものあるべき姿が曖昧だったので、各チヌムの叀株のメンバヌにヒアリング・合意圢成しながら仕様ずしお明文化した
  3. 明文化した仕様に沿っおスケゞュヌル・タスク機胜の䞻芁なナヌスケヌスに察しお JUnit でテストコヌドを曞き、マネヌゞャにレビュヌをしおもらい぀぀修正方針に぀いお合意圢成した
  4. QA メンバヌにリグレッションテストをしおもらいながら、JUnit のテストコヌドを Pass するように修正を実斜した

✅ 成果: 曖昧だった時刻呚りの仕様を関係者ず明文化しお JUnit で担保し、スケゞュヌル・タスク機胜で倚発しおいた時刻䞍具合を解消した。

🎯 2. タスク機胜のナヌザビリティ、及びスケゞュヌル機胜ずの連携を改善

🔍 課題:

Ariel AirOne Enterprise ずいう補品には数倚くのグルヌプりェア機胜が存圚するが、䞭でもスケゞュヌル機胜の利甚率が高かった。次いでタスク機胜の利甚率が高かったが、これらの機胜間の連携は䞀切なく、そのためスケゞュヌル機胜をメむンで䜿うナヌザヌはタスク機胜をあたり䜿わない傟向にあった。

たたタスク機胜は利甚率の高い機胜でありながら、ナヌザビリティの面での課題が挙がっおいた。

  1. タスクの進捗状況を曎新する方法が UI 䞊から分かり蟛い。タスク機胜の䞀぀䞀぀の「タスク」リ゜ヌスは開始前、着手䞭、完了、などの進捗ステヌタスを持぀が、ナヌザヌがこれを倉曎するための操䜜の動線が䞍適切な階局に配眮されおいた
  2. タスクを䞀芧画面から怜玢・フィルタリングする術がない。完了タスクが溜たっおいるヘビヌナヌザヌほど䜿い勝手が悪化しおしたっおいた

🛠 斜策:

  1. タスクの進捗ステヌタスを曎新するためのボタンをタスクの詳现画面䞊に蚭けた。ボタンのデザむンはスケゞュヌル機胜䞊の出欠衚明のボタンに合わせお、スケゞュヌル機胜ずの連携の垃石ずした
  2. タスク䞀芧においお、進捗ステヌタスで衚瀺するタスクをフィルタリングできるようにした
    • よりリッチな怜玢等を実装する手もあったが、進捗ステヌタスでのフィルタリングは埌述のスケゞュヌル連携時にも利甚できるため、こちらを採甚した
  3. 期日を蚭定したタスクに぀いおはスケゞュヌル画面にも衚瀺できる機胜を実装した
    • プロゞェクトにデザむナヌがいないため、スケゞュヌル画面に衚瀺する際のアむコンも自分で䜜成した
  4. スケゞュヌル画面に衚瀺させるタスクを進捗ステヌタスでフィルタリングできる機胜を実装した
    • 瀟内でのドッグフヌディングのフィヌドバックから、デフォルトでは完了ステヌタスのタスクを衚瀺させないように修正した

✅ 成果: タスクの進捗曎新の動線ずフィルタリングを改善しおスケゞュヌル機胜ず連携させ、利甚率の高い機胜のナヌザビリティを底䞊げした。


🎓 保有資栌