ID:69552さん

3年後の目標や野望


エンジニア組織を束ねて組織の中核になりたい。

1人でサービスを作るより、チームで大きなサービスを作ることに楽しさを感じるため。

年収評価シート

2023年/半年以内

美容師向けライブ配信サービスをNuxt.js2系からNext.jsへのリプレイス

## プロジェクト概要 Nuxt.js2系で動いている美容師向けのサービスをNext.jsにリプレイスするプロジェクトです。 ## チーム情報 フロントエンドエンジニア: 4名 テスト: 1名 デザイナー: 1名 ## 担当 - PM、EM - メンバーの採用 - フロントエンド実装(リード) - 設計 - 開発 - コードレビュー - テストディレクション ## 開発環境 Next.js, Nuxt.js, TypeScript, Node.js, Storybook, Vitest, Jotai, React Query, React Hook Form, CSS Modules, Sass, Radix UI, Headress UI, ESLint, scaffdog, Express, Prisma ※全て私が技術選定をしました ## 開発メンバーの採用活動 プロジェクトを進行するにあたり、社内にフロントエンドに精通しているメンバーがいませんでした。 EMも担っていることもあり、採用活動からスタートしました。 スケジュール的に主に業務委託の採用をメインに活動し、書類審査〜面談まで全て対応しました。 自身のSNSからも募集をし、1名採用費用0で採用しました。 現在社員の採用も実施しており、書類審査、カジュアル面談、1次面接を担当しています。 ## プロジェクトの課題 社員は私1人で、他4名は業務委託メンバーでスケジュールがある中でのリプレイスプロジェクトだった為、コードの品質や設計のばらつきが懸念されていました。 その為、他メンバーがJoinするまでにscaffdogを用いて、基盤コードの自動生成を構築しました。 pageの設定ファイル、コンポーネントの記述ファイルを中心に設定し、 コマンドを入力と質問に答えるだけで、 Page, Component, Storybookの基盤コードを作成できるようにしコーディング規則がばらつかないよう準備しました。 全てのComponentにStorybookを使用する方針で実装しました。 またApi部分ではReact Queryを用いてベースとなるファクトリー関数を実装しました。 この関数を使うことで、後から加わる開発者がスムーズに同じ設計でApi部分の実装ができるようにし、煩雑になりがちなキャッシュのkeyを自動で管理できるよにしました。 ## 実装内容(詳細) ※apiは全てある状態で、Nuxt.js2系が既に動いている状態のため、既存のNuxt.js2系のコードを読みながらNext.jsに移行していくような作業 1. 基本的にベースとなる基盤コードの実装を中心に行なった 基盤コードの実装を主に担当し、ページの移行タスクは業務委託のメンバーにお願いしました。 コードレビューと品質管理、社内の調整業務を行いました 2. 決済機能のフロント実装 決済に関わるフロントエンドの実装は私が担当しました。 Next.jsとapi routes, 既存のExpressサーバーを用いて、セキュアに実装しました。 3. 既存サービスのUI・UX改善のアプローチ ただ移行するだけでなく、既存サービスのUI・UXの改善を実施しながら行いました。 具体的にいうと、社内の営業CSメンバーから、ユーザーから上がってきている改善点をヒアリングし、外部のデザイナーに落とし込みながらユーザー体験の向上に心がけました。 またデザインも整備されていない状態だった為、これを機にXD→Figmaへのデザイン移行も実施しました。

2022年/2年以内

美容室向けSaaS系のイーラーニングサービスの開発

## プロジェクト概要 美容師向けのイーラーニングサービスの新規開発です。 ## チーム情報 PL: 1名 エンジニア: 6名 テスト: 1名 デザイナー: 1名 ## 担当 - PL - ワイヤーフレーム、デザインディレクション - フロントエンド実装(メンバー) - バックエンド実装(メンバー) - テストディレクション ## 開発環境 Next.js, Nuxt.js, TypeScript, Express, Node.js, Prisma, AWS, PostgreSQL, Jest, Vimeo Api, Vimeo, chart.js ## 新規サービスの0→1立ち上げのPLを担当 新規サービスの立ち上げをPLとして行いました。 実装と並行して社内調整やリリース準備を行い、半年ほどの期間でリリースしました。 ## プロジェクトの課題 プロジェクト開始から主にコミュニケーション部分に課題がありました。 - 外部開発会社 - 外国籍のメンバー が絡むプロジェクトで認識のズレが起きやすいような状況でした。 Notionでチケット管理を徹底し、1週間でスプリントを回して開発を進めました。 週1の全体MTGでチケットの進捗と仕様に関して確認し、遅れや懸念点がないかの確認を徹底して補いました。 MTGのファシリテーターも担当し、全体の空気が和やかになるようにも心がけました。 また今回のプロジェクトで使用するコンテンツは自社の動画制作チームが実際に撮影したしたものだったため、開発とコンテンツ制作を同時に進めていました。 このコミュニケーション部分も担当し、開発と配信現場のコミュニケーションコストも解消しました。 ## 実装内容(詳細) 1. 動画周りの実装 動画を再生している間、視聴ログを取得する実装をしました。 Vimeo apiを用いて、動画の再生、停止、早送り、途中離脱等、様々なパターンで動画の視聴ログをサーバー側に送る実装をしました。 かなりテストがしづらい実装だったため、ログのパターンを仕様書に洗い出し、全てのパターンでテストコードを書きました。 端末やOS依存でのエラーも多発し、動画周りの知識が向上しました。 2. 動的なフォームのフロント実装、api実装 イーラーニングサービスの為、確認テストのような機能がありました。 回答形式と問題形式が複数あり、apiのレスポンスに応じて動的にフォームを切り替え、値を取得していく実装を行いました。 またバックエンド側のロジックも実装し、テストの合格ロジックや問題形式によるテーブル設計も行いました。 3. 動画アップロードロジックの実装 Vimeo apiを用いて動画のアップロード実装を行いました。 tusプロトコルを用いてアップロードの中断と再開のロジックも担当しました。 4. 決済周りのapi開発 Prismaを使用し、バックエンド側もTypeScriptで実装しました。 ベリトランスのモジュールを利用し、継続決済の実装を一部担当しました。 その他周辺apiもテーブル設計等しながら他メンバーと共に実装しました。 ※視聴ログ周りのテーブル設計は他メンバーが対応 4. リリースしてからの保守運用 プロジェクトリリースまではPLで全体管理を中心に行なっていましたが、リリース後はフロントエンドのリードエンジニアも担い、設計〜コードレビューまで担当しました。 また社内からの要望をまとめ、開発の優先度をつけるなど全体のタスク管理をしてプロジェクト全体をリードしました。

2022年/1年以内

福祉相談員と障害者施設をつなぐマッチングサービスの開発

## プロジェクト概要 0→1でタイトルにあるサービスを新規開発で立ち上げている段階で現在開発中です。 副業として月80時間で参画し、現在も開発を続けています。 ## チーム情報 PM: 2名 フロントエンド: 4名 バックエンド: 4名 SRE: 1名 デザイナー: 2名 ## 担当 - フロントエンド実装 - api実装 ## 開発環境 Next.js, TypeScript, Nest.js, Node.js, Go, grpc, protocol buffers, AWS, mongo db ## プロジェクトの課題 - 人材不足 - 開発知識の不足 プロジェクト初期からJoinしましたが、事業会社が開発組織を内製化したばかりということもあり、技術顧問はいたものの、開発メンバーや知識が全体的に不足している状況でした。 自身の新規開発の経験を活かし、積極的にナレッジの共有をしました。 ## 開発内容(詳細) 1. フロントエンドの画面実装 参画当初、メンバー内にいわゆるモダンフロントエンドの知識があるメンバーが少なかった為、画面の大部分を実装しました。 かなりフォームの量が多いサービスだったため、React Hook Formを用いた設計や、ドラッグ&ドロップでの並び替えの基盤実装などを行いました。 2. Protocol buffersを用いたschema駆動開発 Protocol buffersを用いて、api設計の対応も一部行いました。 フロントエンド実装がメインでしたが、繋ぎ込みの際、一部Go言語でバックエンド実装も行いました。 参画初期にフロントエンドを実装するエンジニアが足りなかった関係もあり 画面数の半分くらいを1人で実装しました。 コンポーネント設計から幅広く、フロントエンド部分を担当し、protocol buffersを用いてapi設計等も担当しました。 3. コミュニケーションコストの削減 普段自分で副業のマネジメントをしていることもあり、副業人材のマネジメント工数に関しては理解していました。 その経験をもとにコミュニケーションコストをいかにかけさせないかを意識していました。 具体的にいうと、実装するページが決まっていた為、自分でissueを作成し、開発リーダーには確認許可を取るだけという形を提案して行いました。 仕様書があまり纏まっていないプロジェクトでしたが、デザインから仕様を汲み取り、issueを作成しドメイン知識の確認、実装方針の確認のみとしました。 コミュニケーションコストが掛からなくて助かると非常に高い評価をいただけました。 またリリース前には、自身の経験を活かし、注意点や確認点を積極的に発信していきました。

2021年/2年以上

会員数6万人のWordPressをTypeScriptにリプレイス

## プロジェクト概要 WordPressで構築されている、会員数6万人のシステムを Nuxt.jsとNode.jsでフルリプレイスしました。 WordPressで実装したと思えない規模で、都度決済と継続決済の仕組みも導入されており、正直バグだらけのレガシーシステムをリプレイスようなイメージで、 決済移行も絡む、とても緊張感のあるプロジェクトでした。 ## チーム情報 PM: 1名 フロントエンド: 2名 バックエンド: 3名 デザイナー: 1名 ## 担当 - フロントエンド実装 - api実装 - データ移行 ## 開発環境 Nuxt.js, TypeScript, Express, Node.js, Prisma, SQL, AWS, PostgreSQL ## プロジェクトの課題 仕様書が全くない中でのリプレイス作業 WordPressの開発がオフショアであったこともあり、仕様書がほとんどない中、データベースの移行と決済移行をしなければなりませんでした。 ## 開発詳細 1. 移行スクリプト WordPressのデータをPostgreSQLに移行するといった形だった為、 移行スクリプトをSQLで書きました。 移行後のデータベース設計自体は、他のリードエンジニアが行い、自分の担当としてはWordPressのデータを把握し、それを新しいテーブル構造に落とし込むSQLを書くといった感じです。 SQLだけではどうにもならない箇所は部分的にPythonを使用しました。 2. フロントエンドとapiの実装 このプロジェクトでは、特に分業制を取らず、フロントエンドとバックエンドを満遍なく担当しました。 バックエンドでは、WordPressのデータを移行し、apiとして返すを実装し、フロントエンドではWordPress特有のHTMLデータをどう表示するかが課題にあり、MCEエディタを導入し、スタイルガイドをデザイナーと一緒に設定し、移行前の表示と変わらないように実装しました。 3. 決済移行での決済会社とのやりとり、テスト 決済会社の移行作業を行いました。 メイン実装自体は他のリードエンジニアが行い、自分は移行する決済会社とのやりとりとテストの実施を中心に行いました。 継続決済が非常にテストしづらかった為、テスト用の決済apiを作成しました。 任意の日付を指定するとテスト環境で決済が行えるといった関数でこれを用いてテストをスピーディーに行いました。

マネージメント能力

エンジニアリングマネージャーとして組織管理を行っていました。
ベンチャー企業で体制が整備されていない中で、開発組織をどう良い方向に持っていくかが課題でした。 具体的に、開発組織以外との情報の共有、開発組織でのタスク管理、オープンな環境作りが課題でした。
組織づくりをしていく上で、社員よりフルリモートの業務委託の方の数の方が多かったので、情報の整理とタスクの状況が見えづらいという壁がありました。 まず社内の情報をオープンにするため、Notionを全社的に導入しました。 情報をNotionに集約させることで、社内のクローズドな情報を全てOpenにして、サービスと他部署を絡めた組織の課題をみえる化しました。 またエンジニア組織を作っていく上でこれまで、仕様書やデザインが煩雑に管理されており、新しいメンバーのキャッチアップが難しい状況でした。 タスク管理、仕様書、議事録、採用情報、サイトマップ、開発メンバー情報、これら全てをNotionにまとめることによって情報の流れと開発組織の見える化を徹底しました。 またこれまでXDとGoogle Driveで管理されていたデザインをFigmaに全て移行することを推進しました。 作業自体は業務委託の方に行っていただきましたが、タスク管理、ディレクション等全て担当しました。

10名規模のチームリーダーとして、プロジェクトの全体管理。 社員、業務委託、開発会社へのタスク管理を行っていました。
社員、業務委託、開発会社と様々な人が絡みある環境でリモートワークで開発をしていました。 これらのコミュニケーションを円滑に回し、プロジェクトの全体管理をする責務がありました。
## リモートワークでのコミュニケーション、教育 社員は週の半分リモートワークで、業務委託、開発会社のメンバーはフルリモートで開発をしている状態でした。 いかにコミュニケーションを円滑にとり、教育をスムーズにしていくかということが課題でした。 ## どう解決したか?? 1週間でスプリントを回しタスクの漏れや仕様のズレがないか徹底的に確認しました。 情報は全てNotionに集約させ、開発メンバー全員が必ずここを見るというのを徹底しました。 またフルリモートのメンバーには積極的に社内で食事会を開き、少しでも開発以外のコミュニケーションが取れるよう、意識しました。 社員メンバーにはSlackのtimesチャンネルを導入し、少しでもタスクで詰まっている部分や気になる部分があれば呟いてもらうようにして、オープンな環境を徹底しました。 また2週間に1回対面での1on1を実施し、普段聞き取れない部分の悩みやキャリアの相談等を聞き、モチベーションを保つよう意識しました。

アピール項目


アウトプット

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

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

インフラに関する知識が少ないため、AWSの知識は身に付けなければと思っています。

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

0→1での新規開発や、開発組織が整備されていない環境での組織改善でパフォーマンスを発揮できると思います。 エンジニア組織の新規内製化にも興味があります。

キャラクター

直近で一番やりたいこと
技術を極めたい
好きなスタイル
好きな規模
自信を持って人より秀でていると言える点
プレゼン力 / 調整力 / 問題解決力
スキルのタイプ
得意なフェーズ
会社を選ぶ一番の基準
一緒に働く人
やりたくない分野
SI / アダルト
その他の特徴
新しい技術はとりあえず試す / 起業/創業期のベンチャーにいた / 多職種のバックグラウンドがある
その他のやりたいこと・やりたくないこと

## やりたいこと

フロントエンドとバックエンド共にTypeScriptで開発するのが得意ですが、特に言語のこだわりはありません。
プロダクトを伸ばす上で最適な技術で、自社プロダクトと組織の成長に関与したいと考えています。

- 組織づくり
- エンジニア採用
- 他部署との連携
この辺りに興味があります。

ただ手を動かすのも好きなので、完全にマネジメント側に回るというよりは、開発もしつつ組織づくりに徐々に加われたらなと思っています。

やりたい事

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

基本プロフィール

年齢
今年で20代後半
好きな Text Editor
intelliJ
希望勤務地
東京都
希望年収
未入力
転職ドラフトに参加して
企業から指名を受け取ろう!
会員登録をして転職ドラフトに参加すると、参加企業から年収付きの指名を受け取ることができるようになります。
会員登録する
ご意見箱

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

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

  • {{error}}
SIGN UPSIGN IN


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