松本

3年後の目標や野望


テックリードとしてプロダクトを牽引したい

技術でチームを引っ張り強い組織を作りたい。 マネジメント、教育にも携われる人材になる。

年収評価シート

プロジェクトカテゴリ
担当工程
経験した職種・役割
あなたが実際に使っていた技術
このプロジェクト詳細は公開されていません

プロジェクトカテゴリ
担当工程
経験した職種・役割
あなたが実際に使っていた技術
このプロジェクト詳細は公開されていません

2021年/2年以内

チャット+通話 EtoC システム (Go, Next.js)

# プロジェクト概要 E2Cリモート接客システムの開発 **主な機能** - チャットボットシステム - リアルタイム有人チャット - ビデオ通話, 画面共有機能 バックエンド、フロントエンド開発のアプリケーションチームとして従時。 新規0-1開発の要件定義フェーズから参画、Bizサイドとの打ち合わせ、詳細設計、実装、 テスト、 リリースまで行った。 現在はセカンドリリースに向けて新機能を開発中 ## 担当業務 - Go, GraphQLでのAPI開発 - Next.js, GraphQL(ApploClient)でのフロントエンド開発 --- ## Go, GraphQLでのAPI開発 ### SendGrid(メール送信SaaS), Auth0を用いたユーザー登録・招待機能の実装 **使用した技術** - SendGrid - sendgrid-sdk-go - Auth0 #### 詳細・気をつけたところ・工夫したところ レイヤードアーキテクチャのinfra層からinterfaceを呼び出し各種APIを作成。数パターンの条件分岐に対応できるよう先にテストケースを洗い出しロジック実装を行った。 ### S3への画像投稿APIの実装 **使用した技術** - aws-sdk-go - AWS S3 #### 詳細・気をつけたところ・工夫したところ mainパッケージでDIPを行うことにより開発環境ではローカル上で静的ファイルを保持、本番環境ではクラウドにアップロード可能にした。 また追加実装があってもアップロード先を指定するだけで保存先を変更できるような実装にした。 ### Redis Pub/Sub を使用したリアルタイムでの状態管理 **使用した技術** - Redis keyspace notification - go-redis/v8 - gqlgen Subscription - websocket #### 詳細・気をつけたところ・工夫したところ サーバー起動時にgorutineでRedisのPSUBSCRIPTIONを待ち受ける。 keyspaceの機能を使用して各イベントに対してGraphQL側のSubscriptionで待ち受けているチャネルに流し込むことで状態管理を実現した。 この実装でgorutine, context, channelを多用し一気に理解を深めることができた。 工夫した点はcontext終了時にkey,valueを引継ぐパッケージを作成し追加実装があった時に対応できるようにした。 ### GraphQL各種APIのスキーマ設計, 実装 **使用した技術** - gqlgen #### 詳細・気をつけたところ・工夫したところ ビジネスロジックに必要な各種APIの設計と実装。 ビジネスロジックのコアとなるモデルのCRUDなAPI全般を開発した。 特に「GraphQLスキーマ設計ガイド」という書籍や、GitHubAPIを参考にした。 Query, Mutation, Subscription等のGraphQLの機能全般を習得。 工夫した点は、不要なAPIが増えやすい対策としてAPIをツリー構造で設計。N+1に対してのdataloader実装、グローバルID設計によるキャッシュの最適化を行なった。 ### CI構築 #### 使用した技術 - GitHub Actions - docker-compose - Docker - Ubuntu #### 詳細・気をつけたところ・工夫したところ 1stリリースフェーズにてCI環境構築を行った。 開発環境ではdocker-composeで構築されておりコンテナ内でテストを走らせていた為、 同じ構成をCI上に再現する必要があった。問題はdocker-compose.ymlの配置されているレポジトリとAPIサーバーのレポジトリが別れており毎回 git clone して docker image build を行わないと行けないことだった。 GitHub ActionsでcacheライブラリとDocker save load 方式を採用しCI時間を2分の1に短縮した。 --- ## Next.js, GraphQL(ApploClient)でのフロントエンド開発 ### toB向けSaaS管理画面のフロントエンド実装 **使用した技術** - ApolloClient - react-hook-form - tailwindcss - WebRTC(skyway) - graphql-codegen - UIライブラリ複数 #### 詳細・気をつけたところ・工夫したところ 主にクライアントの管理画面側の実装を行なった。 特にこだわった点は クライアントとエンドユーザーのチャット+通話画面の実装。 サービスのコア部分という事もあり、UIUX・デザインに関してPM, デザイナーと綿密に議論した。 WebRTC接続での映像表示、各状態毎のボタン位置やリダイレクトのパターン、ガイダンスの吹き出しなどを実装し、かなり満足のいく機能へとブラッシュアップできた。 クライアントからもご好評頂いた。 その他、API側とセットで各種機能の実装。 --- **その他** ログレベルの設計・実装、APIテスト(goledenテスト) --- ## 習得したスキル - GoでのAPI開発 - アーキテクチャ設計(レイヤードアーキテクチャ) - NoSQL (Redis)での状態管理 - WebSocket, Redis Pub/Sub でのリアルタイム通信 - goroutine を用いた並列処理 - GraphQLでのAPI実装, スキーマ設計 - ApolloClientでのフロンエンド開発

2022年/半年以内

toB SaaS

# プロジェクト概要 リリース前の為プロジェクト詳細は非公開 副業業務委託でチーム1人目のエンジニアとして参画 ## 担当業務 - 開発環境の初期構築・技術選定, ドキュメンテーション - AWS Cognitoの操作API - 各種API --- ## 開発環境の初期構築・技術選定, ドキュメンテーション 2022年1月より1人目のエンジニアとして参画(CTOと2人体制)。 プロジェクトキックオフが2022年2月の為後続で参画するエンジニアがすぐに機能実装できるように環境構築とドキュメンテーションを行なった。 **使用した技術** フロントエンド - Next.js - openapi-generator - ESLint, husky, prettier - react hook form バックエンド - Go - oapi-codegen - DaynamoDB (DaynamoDB Local) - aws-sdk-go - guregu/dynamo - wire #### 詳細・気をつけたところ・工夫したところ まずは自身が未経験の技術(OpenAPI, Daynamo, wire)のキャッチアップを行いデモアプリを作成。 詰まったところを細かくメモ、スクリーンショットで撮るなどして記録した。 参画後1ヶ月ほどして2名体制から10名弱の体制になり、メンバーのキャッチアップ速度を上げる為に開発フローをドキュメント化して共有。それでも詰まった所があれば適宜オンラインミーティングなどでサポートを行なった。 後続メンバーのキャッチアップ、環境構築を効率化し開発速度の向上に貢献できた。 ## AWS Cognitoの操作API ユーザー関連のAPI実装、CognitoAPIの操作 **使用した技術** - aws-sdk-go - AWS Cognito ##### 詳細・気をつけたところ・工夫したところ UserのCRUD操作に伴うAPI全般、dynamoDBとCognito userpoolの操作全般を実装した。 1ユーザーが複数テナントに所属していることを表現する為のモデル設計を行い、 汎用性の高いAPIを構築することができた。 ## 単体テスト、モックテストの構築 モックライブラリと自作CLIを使用したモックの生成、各レイヤーの単体テストを行なった。 **使用した技術** - matryer/moq ##### 詳細・気をつけたところ・工夫したところ メジャーなgolang/mockではなく ボイラーテンプレートが少なく、より表現力の高いmoqを提案し実装をおこなった。 また、generateタグではなく独自のCLIとmakeファイルでのコード生成を実現した。 #### 各種API DaynamoDBを操作する各種APIの実装 **使用した技術** - DaynamoDB - guregu/dynamo ## 習得したスキル - OpenAPI3 - クリーンアーキテクチャ - DaynamoDB - AWS Cognito - wire(DIライブラリ)

2021年/半年以内

チャットボット(Go, Next.js)

# プロジェクト概要 大手クライアントのチャットボットPoc開発 **主な機能** - チャットボットシステム - マスタデータ返答 - AIエンジン返答 - ログ集積 - クライアントのログ管理画面 ## 担当業務 - チャットAPI - ログ集積 - クライアントマスタのバリデーションAPI --- ## チャットAPI **使用した技術** - gin - goldie - docker - Redis #### 詳細・気をつけたところ・工夫したところ 基幹システムのチャットAPIを実装。ユーザーの発話パターン、クライアントの追加要望などで使用が煩雑になっていった為、テスト環境を整備し部分的にテスト駆動で開発を行なった。リクエストパターンが明確になり、実装・レビューコストを下げる事ができた。 テスト環境はgoldie, dockerで構築。 その他、ログ集積、Redisでの状態管理、キャッシュ管理、AIエンジンへのリクエスト処理など ## クライアントマスタのバリデーションAPI **使用した技術** - line-bot-sdk-go #### 詳細・気をつけたところ・工夫したところ 将来的にLINE Bot への拡張を見込んでいた為, LINE Messaging API の型システムでバリデーションが必要だった。 ライブラリには希望するバリデーション機能が提供されていなかった為、独自に型チェック、アンマーシャリングするAPIを発案、実装した。 自社データ入力部労力削減、エラー検知へ貢献できた。 ## 習得したスキル - 複数開発会社を跨いでの開発フロー - goroutine を用いた並列処理 - RestAPI - LINE Messaging API

2020年/2年以内

フィンテックアプリ開発プロジェクト(Ruby on Rails, React.js, AWS)

# プロジェクト概要 株価情報サイト 日本、米株の株価情報と自社AIによる株価予測情報を提供する投資支援システム **主な機能** - 株価閲覧 - AIおすすめ銘柄(投資助言業) - ポートフォリオ作成機能 - 株価予想ゲーム ## 担当業務 - Ruby on RailsからRuby on Rails ✖︎ React.js へのフルリプレイス - 株価予想ゲームを無料サービスへの切り出し - 株価データ更新のバッチ処理 --- ## Ruby on RailsからRuby on Rails ✖︎ React.js へのフルリプレイス **使用した技術** - React.js - react_on_rails #### 詳細・気をつけたところ・工夫したところ Ruby on Railsで構築されていたフロントエンドをReact.jsにリプレイスし、Rails部分はAPI化を行なった。(SPA化) チーム参画時Reactでの開発は未経験だったが、モダンフロントへの移行が検討されていた為自ら手をあげキャッチアップからライブラリ選定・実装まで行なった。 自身のスキルアップだけでなく、チームに普及させる事でモダンフロントの知見を伝播させる事に成功した。 ## 株価予想ゲームを無料サービスへの切り出し **使用した技術** - Ruby on Rails - React.js - AWS ECS, RDS #### 詳細・気をつけたところ・工夫したところ 同システム内のゲームサービスを販促目的で無料枠への切り出しを行なった。 レポジトリごと分離しAWSでECS(EC2),RDS, を使用して再構築。 元々Dockerは未使用だったがこれを機に開発環境、デプロイ環境共にコンテナ化した。 ## 株価データ更新のバッチ処理 **使用した技術** - AWS Lambda - activerecord-import - cron #### 詳細・気をつけたところ・工夫したところ 購入している株価データ、 自社AIシステムが生成している予想データのバッチ処理実装。 アプリケーションに依存度が低いデータはAWS Lambda(ruby)を使用、依存度が高いものはアプリケーションからRailsのcron機能で実装した。 Lambdaの制限時間をオーバーすることがあったのでCSV変換でのSQL処理を行い、アプリケーション内ではactiverecord-importを使用したbulk insertを使用するなど、各要件に対して最適な実装、アーキテクチャで実装することでトータルのバッチ処理時間を1/2以下まで削減。アプリケーションからの依存度も下げることで保守性を高めるもできた。 ## 習得したスキル - Ruby on RailsでのAPI開発 - React.js - RestAPI - SPA開発 - AWS, Lambda, RDS, ECS, CircleCIを用いたインフラ基盤の構築

マネージメント能力

アピール項目


アウトプット

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

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

設計力、工数見積もり能力、実装力、ITビジネス力、 マネジメント力

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

未入力です

キャラクター

直近で一番やりたいこと
技術を極めたい
好きなスタイル
好きな規模
水とプログラミングどっちが大事?
自信を持って人より秀でていると言える点
調整力 / 問題解決力 / 責任感
スキルのタイプ
得意なフェーズ
会社を選ぶ一番の基準
理念や社会的意義
やりたくない分野
SI / アダルト
その他の特徴
新しい技術はとりあえず試す / 趣味は仕事 / 多職種のバックグラウンドがある
その他のやりたいこと・やりたくないこと

しばらくはGo言語のサーバーサイド開発を中心に活動し、マイクロサービス開発・DevOps領域へとキャリアを進めいこうと考えています。

やりたい事

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

基本プロフィール

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

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

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

  • {{error}}
SIGN UPSIGN IN


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