Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ジュニアエンジニアから脱却するために業務以外で意識していること
Search
katakyo
January 21, 2024
1
100
ジュニアエンジニアから脱却するために業務以外で意識していること
〜若手エンジニア〜新年LT交流会で発表したLTのスライドです
https://mybest.connpass.com/event/306241/
katakyo
January 21, 2024
Tweet
Share
More Decks by katakyo
See All by katakyo
マイベストのREST APIをGraphQLに置き換えた話
katakyo
0
110
新卒エンジニアの半期の振り返り
katakyo
0
1k
Featured
See All Featured
Six Lessons from altMBA
skipperchong
27
3.5k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
Docker and Python
trallard
40
3.1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Thoughts on Productivity
jonyablonski
67
4.3k
It's Worth the Effort
3n
183
27k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
The World Runs on Bad Software
bkeepers
PRO
65
11k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Transcript
ジュニアエンジニアから脱却するために業務以外で 意識していること 片田恭平 (@katakyo_51)
自己紹介 目次 1 ジュニアエンジニアとミドルエンジニアの違い 2 業務以外で意識している4つのこと 3 まとめ 4
片田 恭平 Katada Kyohei Backend Engineer|Web Product 金融サービスミッション 23卒にマイベストのバックエンドエンジニアとして入社 触る技術: Ruby
on Rails, GraphQL, たまにReact 趣味: スポーツ観戦(野球) , 漫画, ドライブ 自己紹介
期初の1on1で上長と話したこと
来年三月までの目標は ミドルエンジニアになりましょう
自分なりですが、ジュニアエンジニアの定義を考えてみました ジュニアエンジニアとミドルエンジニアの違い ジュニアエンジニアの定義 新卒、インターン生など若い 社会人歴が少ないとジュニアエンジニアから始めると思います 1 要件に対して先輩のサポートがあれば実装できる PdMやデザイナーの要件に合わせて仕様通りの実装をサポートされながらできる 2 上長に報連相をこまめにしながら、次のアクションプランを考えられる
コミュニケーションをとりながら、フロントエンドで実装しにくい型やデータがあれば、 適宜修正して完成まで持っていきます 3 要件定義と見積もり、設計がサポートがあればできる PdMや先輩エンジニアと相談しながら案件の要件定義や見積もり、設計のサポー トがあればできる 4
自分なりですが、ジュニアエンジニアの定義を考えてみました ジュニアエンジニアとミドルエンジニアの違い ミドルエンジニアの定義 要件に対して任されたことを一人でこなすことができる PdMやデザイナーの要件に合わせて仕様通りの実装を最後まで責任を持ってできる 1 グループや組織の適切な人間に報連相をこまめにしながら、次のアクションプランを考えられる 特定のメンターだけではなく、社内の詳しい人に直接報連相し、すぐに次のアクションを決められる 2 正確な要件定義と見積もり、設計が一人でできる
案件の要件定義や見積もり、設計のサポートがあればできる。また様々な実装パターンのメリデメをあげてベストな選択肢を選べる 3 ジュニアなメンバーや他のメンバーのコードレビューやサポートができる 案件の要件定義や見積もり、設計のサポートがあればできる。また様々な実装パターンのメリデメをあげてベストな選択肢を選べる 4
ジュニアエンジニアとミドルエンジニアの違い 個人的にミドル以上のエンジニアに対して感じること 実装が早い 1 コミュニケーションがうまい 2 タイピングやコードを書くのが早いです。画面の切り替え方とかかっこいい 円滑に実装を進めるために、適切な人に報告連絡相談が丁寧かつ早いです。あと優しい 知識が豊富 3
コードレビューなので、今後負債になりそうな指摘や質問した際にこう言うアプローチもあるよと提案できるソフ トウェアに関する知識が優れている インプットを継続的にしている 4 分報(times)を見ても毎日インプットしている
どうやったらなれるんだろうか
自分なりに考えてみました
個人の努力で何とかなるものとできるようになるために、 (機会を与えてもらう )必要がある問題がある ジュニアエンジニアとミドルエンジニアの違い ミドルエンジニアの定義 要件に対して任されたことを一人でこなすことができる PdMやデザイナーの要件に合わせて仕様通りの実装を最後まで責任を持ってできる 1 グループや組織の適切な人間に報連相をこまめにしながら、次のアクションプランを考えられる 特定のメンターだけではなく、社内の詳しい人に直接報連相し、すぐに次のアクションを決められる
2 正確な要件定義と見積もり、設計が一人でできる 案件の要件定義や見積もり、設計のサポートがあればできる。また様々な実装パターンのメリデメをあげてベストな選択肢を選べる 3 ジュニアなメンバーや他のメンバーのコードレビューやサポートができる 案件の要件定義や見積もり、設計のサポートがあればできる。また様々な実装パターンのメリデメをあげてベストな選択肢を選べる 4 個人の問題 環境の問題 個人の問題
ミドルエンジニアになるにはまず信頼を 得られる必要がある 信頼をあげていくためには 個人でできることと 活躍できる環境を作り出していくこと が大切
業務以外で意識している 4つのこと 画像
業務以外で意識している4つのこと 01 インプット 02 アウトプット 03 生産性 を高める 04 人間関係
自己研鑽としてインプットしたいがうまくいかない方は以下の方法がそこまで負荷なくできると思います
業務以外で意識している4つのこと インプットを増やす Xなどで著名なエンジニアをフォローして気になった記事は片っ端から読む 輪読会をうまく使う 一人で読むのが厳しい本は輪読会などを主催して、継続してやるようにしています 自分はPerfect Ruby on Railsの輪読会を運営、Python機械学習の輪読会に参加しています 気になった技術は個人開発やサンプルアプリで手を動かして試す
導入前の技術や最新の技術は記事を読むだけでなく手元で試せると良いです 詰まった時に公式ドキュメントをみていれば勝手にインプットできます 日々、技術のトレンドが変わっていくのでXやZennなどのトレンドの記事は移動中や時間が空いている時に毎日チェック するようにしています 自己研鑽としてインプットしたいがうまくいかない方は以下の方法がそこまで負荷なくできると思います 1 2 3
アウトプットはとにかくやるが一番大事だと思います 業務以外で意識している4つのこと アウトプットを増やす 社内LT会をやってみる LTへのハードルを下げるために、隔週で持ち回りでPFLというLT会を開催し ています 社外にも知り合いを作って、指標を持つ 社外のアウトプットがすごい人と知り合いになって、自分はまだまだと追い込みます アドベントカレンダーに参加する 普段ブログが書かない人はアドベントカレンダーなり、書いてみましょう
案外何とかなります 1 2 3 LT会に登録する LT会に参加、余裕があればLT枠として登録して自分を追い込みましょう 案外何とかなります 4
ネットでググって調べるだけだと答えに辿り着かないこともあるので、 先輩とペアプロなどして聞いて盗むのが一番早いと思います 業務以外で意識している4つのこと 生産性を上げる VScode拡張機能 Ruby LSPやend wiseなどRubyに特化したEditorにしています https://qiita.com/midiambear/items/f38686bd4d139e0cd46c Alfredなどのランチャーツールの導入
Clipboard機能やSnippets機能のあるランチャーツールとして便利です 無料だとRaycastとかが良いらしいです Mac の zsh でエイリアスを設定する よく使うコマンドはzshのエイリアス設定をしてコマンドを打つ時間を最小限にしています docker compose up -d → dcdとかで起動できるようにしています 1 2 3
仕事をするに当たって最も大事なのはコミュニケーションだと思っています コミュケーション力は元々そんなにないので、とにかくやってみて場数を増やすことが最善の道かなと思っています 業務以外で意識している4つのこと コミュニケーションしやすい環境を作る 社内のいろんなイベントに参加する 仕事以外の話もできるように、部活動や社内イベントなど積極的に参加するようにしています。 →ボドゲ、野球、スマブラ、ポケモン、テニス、自社開催のエンジニアイベント(おそらく皆勤) ランチに行く 出社時は基本的に誰かとランチに行きます。シャッフルランチのようなものを企画したり、企画されたものに乗っかり、部署を超え て様々な人と話せるようになりました。最初のきっかけとしておすすめです
ワーケーションや交流できるようなイベントを企画する 部署で初めてのワーケーションを企画したり、新しく入社した人のウェルカムランチの設定やPFLのようなLT会を運営したり交流の場 を増やす努力をしています 会議では必ず発言する 会議でわからないことがあれば必ず発言するようにしています。会議での場数を増やすのと会議後の疑問を無くすのが目的です 1 2 3 4
新卒としてかなり裁量多くやらせてもらえるようになりました。日常の小さな努力で改善できます 約9ヶ月継続してみて 結果どうなったか 社内で技術課題のリードを任された 現在、リファクタ系の技術課題のプロジェクトリードをしています 1 コードレビューや事業課題のフロントエンド領域まで任されるようになった Backend領域はコードレビューのグループに最近入れるようになりました 事業課題ではフロントエンドの領域まで機能単位の開発でできるようになりました 2
25卒のメンターを任されるようになった 内定者の25卒のメンターを任されるようになりました。 3 仕事がしやすくなった 部署問わず、誰とでもコミュニケーション取れるようになったり、質問に対する心理的障害がなくなったので、仕事がスムーズにできるようになりました 4
• ジュニアからミドルエンジニアになるために必要なことは ・個人でできること(自己研鑽) ・活躍できる環境を作り出していくこと • 自己研鑽(インプットアウトプット)と環境(開発環境と人間環境)を作る には開発以外での小さな努力で改善できるのでおすすめ まとめ
ご清聴ありがとうございました!