ID:49973さん

3年後の目標や野望


業界内で名前の知られたエンジニアになっていたい。また、その知名度に伴った高いスキルを身に付けていたい。

自分が面白いと思えるサービスに関わるチャンスを増やすためです。 世界中の人に使われるようなサービス(カテゴリ問わず)の開発に携わり、テックリードとして技術を活かしてプロダクトを成長させていきたいです。

年収評価シート

2020年/半年以内

ZOZOTOWNのバックエンドリプレイスプロジェクト

## プロジェクト概要 ZOZOTOWNのサーバーサイドプログラム(VBScript)のJava APIへのリプレイス ## 業務内容 - リプレイス方法の検討 - 既存プログラムからのリプレイス対象の抽出、切り分け方法 - リプレイス後のプログラムの既存メンバー(VBScriptのエンジニア)へ引き継いでいく方法 - JavaでのAPI開発基盤の実装 - アーキテクチャの設計 - オニオンアーキテクチャをベースにした構成を採用 - Spring Bootを使用したGradleのマルチプロジェクトで、各階層の依存関係の制約を実現 - MyBatis Dynamic SQLを使用したデータベース通信基盤の実装 - エラーハンドラーの実装 - Flywayでのマイグレーションの仕組みを作成 - モブプロでの他メンバーとの実装方法すり合わせ - 既存システム(VBScript)の実装調査 - アプリケーション内で使用しているストアドプロシージャの使用調査 - ストアドプロシージャ名から呼び出し元の関数を再帰的に抽出するスクリプトを作成(Ruby) - リプレイス後のAPI実装のための処理内容の確認 ## 実績・取り組み - プロジェクトを技術面でリードする立ち位置として、技術選定やアーキテクチャの決定を行った - 技術面だけでなく、リモートワークでのプロジェクト内のコミュニケーション不足解消のための施策もいくつか実施 - リモートランチやカフェタイム(昼間に強制的に時間を抑えて雑談する時間)の設置 - プロジェクトでのKPTの開催

2017年/2年以上

Android、iOS向けのモバイルゲーム「SEVEN's CODE-セブンスコード-」の開発、運用

## プロジェクト概要 「SEVEN's CODE-セブンスコード-」の開発、運用 ## 業務内容 - Kotlin、gRPCの通信基盤開発 - サーバー、クライアントのマスタデータ同期の機能実装 - マスタデータのバージョン管理の機構 - マスタデータ更新時のクライアントで検知する仕組みの実装 - バックエンドのシステムの全体設計 - サーバーサイドの全機能のAPI開発 - Unityでのサーバー通信部分の実装 - gRPCでのクライアント-サーバー通信(APIの実行)部分の実装 - Protocol BuffersからgRPC関連のC#コードを生成するツールの修正 - テーブル情報からデータベースアクセスで使用するコードの自動生成するツールの実装 - 負荷試験 - リリース時のユーザー数想定から同時接続数の見積もり - 負荷試験シナリオの作成 - モニタリングツール(Datadog、New Relic)での負荷監視、ボトルネックの特定 - EC2、RDS、Elasticacheのインスタンスタイプ、サーバー台数の調整(Terraformを使用) - プロジェクトのスケジュール管理 - グランドスケジュールの立案、管理 - 各セクションの進捗確認、スケジュール調整 - セキュリティ監査 ## 実績・取り組み等 - Kotlinでの開発基盤の作成に関わり、それを持って新規プロダクトの開発に当たり、リリースまで完遂した - サーバーエンジニアが1人の体制であったため、全ての機能の開発しながら、Go言語、Ruby、Groovy、GASなどを使った各種ツールの開発、負荷試験と幅広く対応した - TDDを徹底し、人数が少なくテスト体制が弱い中でも、リリース後の大きな不具合はなかった

2020年/半年以内

フィンテック系スタートアップでの金融業務支援サービスの開発

※副業として月20時間程度の稼働で参画 ## プロジェクト概要 企業向けクレジットカードの利用システム開発 ## 業務内容 - クリーンアーキテクチャを使用したKtorアプリケーションでの実装 - 二要素認証の実装検証 - Twillioの検証 - Google Authenticatorを使用しての実装検証 - Kotlin、gRPCの通信基盤開発 - Protocol Buffersでのコード生成スクリプト - 通信の処理、設定などの共通機構 - gRPCのモックサーバー作成 - カード利用履歴表示の機能実装 - 外部のマイクロサービスとのgRPC通信での情報取得 - 取得したgRPCのオブジェクトの変換と表示処理 - カード利用料の確定バッチの実装

2014年/2年以上

Android、iOS向けのモバイルゲーム「私立グリモワール魔法学園」の開発、運用

## プロジェクト概要 「グリモア〜私立グリモワール魔法学園〜」の開発、運用 ## 業務内容 - 各種機能開発 - 設計レビュー、コードレビュー - 設計のレビュー(DB設計、APIのインターフェース設計)は全ての機能で実施 - コードレビューは重要な機能、複雑な機能を中心に実施 - サーバーエンジニアメンバーのタスク管理 - 全施策の仕様共有に参加、各メンバーの見積もりのレビュー - PM、各職種リーダー陣とのグランドスケジュール策定 - 朝会などでの日々の進捗管理、遅れがあった場合のタスク調整 - 新機能開発時の企画内容のレビュー - プロダクトとしての面白さ、整合性の観点 - システムとしての実現可能性と工数対効果の観点 - プロダクトのCM実施時の負荷試験 - CMと各種プロモーションによるユーザー数の増加を想定した負荷試験を実施 - 過去のメトリクスから、ユーザー増加時の各APIのアクセス数の想定やシナリオを作成 - モニタリングツール(Datadog、New Relic)での負荷監視、ボトルネックの解消 - EC2、Elasticacheの台数増加、RDSのインスタンスタイプアップで主に対応 - 結果的にも負荷試験での想定通りの増加となり、障害などなくCM期間を終えた - プロジェクトの方針決定、課題解決 - プロジェクトのリーダーメンバーとして、毎期の実施施策やスケジュールの策定に関わる - 定期的にリーダーメンバーで議論し、エンジニアリング以外の面も含めプロジェクトの課題解決に関わる - プロジェクトの人事面、プロダクトの品質、施策やKPIに関する課題など ## 実績・取り組み等 - エンジニアリーダーとして、システムの品質、プロジェクトのマネジメントを担当 - エンジニアリングだけでなく、プロジェクト、プロダクトの方針決定などにも関わる - 途中からは2プロジェクト横断のエンジニアリングマネージャーとして、双方のシステム開発について責任を持つ - 同時期に「技術ボード」という組織で、エンジニアの組織課題の解決や、経営層との議論にも関わる

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

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

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

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

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

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

マネージメント能力

会社全体のエンジニア組織
会社の「技術ボード」組織(参考: https://blog.applibot.co.jp/2017/08/07/tech-board-history/ )に所属し、以下のような課題な課題に取り組んでいました。 - エンジニアの組織課題を日々議論し解決していくこと - 技術的課題、採用、育成、その他人事面での課題など
エンジニア組織の全般的な課題に向き合っていたため、以下のような様々な施策を実施しました。 ## 新卒研修課題の作成 もともと損卒入社の社員は各プロジェクトにすぐ配属し、OJT形式で育成をしていたため、 - 技術の基礎的な部分(ミドルウェアの仕組みやアルゴリズムなど)を知らないまま開発している - 入るプロジェクトの内容やトレーナーよって身に付けている知識の差が大きい - いきなり実践の環境に入るため、システムの理解をすることにトレーナー、トレーニー双方で時間がかかる そこで、以下のような研修課題を作成するプロジェクトを、責任者として推進しました。 - 基礎研修 - アルゴリズム、SQLなどプログラミングの基礎知識 - 会社で使用している主なミドルウェアの基礎知識 - 応用研修 - 実際のプロジェクトと同様の構成で疑似アプリケーションの設計、実装 - 参考: https://blog.applibot.co.jp/2016/09/13/techgate/ 自身でもサーバーサイドエンジニアの応用研修の課題作成も担当しました。 ## 1 on 1の実施 全エンジニアメンバーの1 on 1を提案し、実施し始めました(担当は何名かで分担しています)。 - 近況報告 - 現在の悩み、困っていること - 今後のキャリアについて考えていること など項目を決めて定期的にヒアリングすることで、各エンジニアの考えていることを会社としてキャッチアップできるようになりました。 ## 社内ハッカソンの開催 エンジニアの技術力の底上げを目的として、社内のハッカソンを実施しました。 施策の責任者として運営チームを組成し、問題の作成から会場や日程の手配などイベントの運営全般を推進しました。 実施内容は以下のような形式です。 - チーム戦で実施(メンバーはプロジェクトをまたいでの選定) - 会社の既存プロダクトのスピンオフアプリを企画から考えて開発(技術選定は自由) - 成果は全社員の前で発表し、投票で結果を決める 普段触らない技術を触ったり、普段関わらない他プロジェクトのエンジニアと話すことで、各人新たな学びが多くあったりモチベーションアップにつながりました。 全社員の前で発表することで、各エンジニアを社内で知ってもらうきっかけになるという副次的効果もありました。 ## 採用テストの作成 採用の精度向上のため、面接時に実施する技術力測るためのテストを提案し作成しました。 形式としてはとしては実装方法にパフォーマンスやセキュリティの面で問題のあるコードを用意し、その問題点をどれだけ的確に指摘ができるかというものでした。 レベルの高いエンジニアはコードレビューでの指摘が的確であるというのを感じていたため、この形式を考えました。

部署の全エンジニア(20名規模)
部署内の全プロジェクトに対して、エンジニアの面から以下のような責務を持っていました。 - 各プロダクトの技術的な品質の担保 - 各エンジニアの人事面での課題解決
まず最初に、以下のような課題を持つプロジェクトがありました。 - テスト時に不具合が多く手戻りが多い - 企画職のと他職種(エンジニアも含む)の間で仕様の認識の齟齬が多い - 日々の進捗の遅れなどが正確に追えていない これらの課題により、開発スケジュールが見積もりから毎回大きく遅れ、リリース時のバグも多く問題がありました。 課題解決のため、以下のような施策を実施しました。 ## エンジニアチームでの朝会の実施 - エンジニア内での進捗の把握 - 問題が発生した場合の早期リカバリ ## プロジェクトの各職種のリーダーを集めての定例MTGを毎日実施 - 開発中のアプリケーションを随時触り、認識の齟齬を削減 - 現状起こっている課題の共有とリカバリ方法の検討 ## 規模の大きいものや、重要な開発の見積もり、設計をレビュー - 技術的な品質担保のため、重要な機能の開発などは責任者として全てレビューを実施 - 見積もりの精度の向上や、設計の品質向上によるシステム品質の担保のため - 自分の知識だけでは懸念がある場合は、他部署の有力なエンジニアを巻き込んでのレビューなども実施 これらを実施するようにして以降、既存のメイン機能の大規模リニューアルなど、大型開発でもリリース時のトラブルを最小限に抑えることができるようになりました。

アピール項目


アウトプット

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

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

## フロントエンド、アプリの技術 これまでの経験がバックエンドに寄っているため、そこは得意分野としつつもフロントエンドやアプリの技術の知識は増やしたいと思っています。 自分で開発できる領域を広げることと、クライアント側の知識持っていることでバックエンドの設計にも活かせると考えています。 ## JVM言語以外の開発言語 メインの開発言語としてはJava、KotlinとJVM言語が多いため、他の言語でも一本プロダクトを作ってみたいと思っています。 これらの言語とは用途や性質の異なるRustなどは良いと思っています。

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

# あなたが一番パフォーマンスを出せるのはどんな環境ですか? - 技術だけではなく、プロダクトのことを考えて議論しながら開発できる環境 - 常識にとらわれない、突拍子もないような意見を否定しない環境(また、そういった意見が活発に飛び交う環境) - 自分が「価値がある」「面白い」と思えるプロダクトを開発できる環境

キャラクター

直近で一番やりたいこと
技術を極めたい
好きなスタイル
好きな規模
水とプログラミングどっちが大事?
自信を持って人より秀でていると言える点
分析力 / 問題解決力 / 巻き込み力
スキルのタイプ
得意なフェーズ
会社を選ぶ一番の基準
その他
やりたくない分野
SI / 金融 / 広告 / アダルト / BtoB
その他の特徴
使用言語にはこだわらない / 勉強会でLTをよくする
その他のやりたいこと・やりたくないこと
未入力です

やりたい事

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

基本プロフィール

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

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

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

  • {{error}}
SIGN UPSIGN IN


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