Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
PHP Conference Okinawa 2024 実務未経験からいち早く戦力化するための 新人エンジニア育成術 ~ 具体的な方法と育成する側の心得 ~ 合同会社春秋 共同代表 マツダジュリ @nchaaa_mj
Slide 2
Slide 2 text
マツダ ジュリ 自己紹介 ● 合同会社春秋 共同代表 ○ あまり表に出ない方 ● プログラミングスクール講師 ○ CODEBASE OKINAWA ○ 小学生~70代まで約500名 ● X → @nchaaa_mj ○ 無益な発信しかしない ○ 酒とメシとキングダムなど
Slide 3
Slide 3 text
合同会社春秋 会社紹介 ● 代表 マツダジュリ , さぼ ● 2022年7月設立 ● 主にシステム受託開発 ○ PHP, Ruby, GraphQL, Vue, React…etc ● 社員数9名(アルバイト含む ) ○ 未経験6名 ■ 県庁職員, アパレル, 介護福祉...etc ● 美味い酒とメシのために命かけてる
Slide 4
Slide 4 text
琉球新報さん(9/28付け)に弊社の取り組みを紹介していただきました!!
Slide 5
Slide 5 text
はじめに ● この資料は公開します! ● 手法・考え方はあくまで参考程度に! ● 育成について考えるきっかけになれば嬉しい! ● 感想・FBください!!!!!! ● 懇親会参加します! ● 懇親会後飲みに行きましょう! (一番重要)
Slide 6
Slide 6 text
みなさんの会社ではエンジニア育成に どのくらい力を入れていますか?
Slide 7
Slide 7 text
なぜ企業は育成に力を入れないといけない のか? ● 業界の人材不足(2030年には最大約80万人 ● 新卒・中途の採用難 ● 社内の技術力底上げ ● 長期的な成長(会社も個人も)
Slide 8
Slide 8 text
と、一般的には言われるわけですが
Slide 9
Slide 9 text
個人的に最近こんなこと感じてます。 ● リアルコミュニケーションの変化(コロナ禍以降 ● 未経験の転職希望が急増(コロナ禍、リスキリング) ● テクニック重視(生成AIに使われている) ※ あくまで観測範囲内
Slide 10
Slide 10 text
つまり、未経験者をどうにかこうにか 鍛え上げなければならない。
Slide 11
Slide 11 text
エンジニア育成で大事なことは?
Slide 12
Slide 12 text
それは『自走力』を身につけさせること。 ※ 外部の動力ではなく、自身の動力によって走ること。
Slide 13
Slide 13 text
技術はやっていれば身についてくる。
Slide 14
Slide 14 text
自走力を身につけるとどうなるか? ● コミュニケーションコストが低くなる ● 問題解決能力が上がる ● インクリメンタルな成長 => 自分で”育つ人”になる。
Slide 15
Slide 15 text
春秋でやっていること ● 生きたコードに触れさせる ● 言語化能力を鍛える ● 目標設定と管理 ● 業務時間内での自己学習
Slide 16
Slide 16 text
「生きたコードに触れさせる」とは? ● 実際に稼働しているシステムのコード ● 設計やデザインパターンに基づいている ● 教科書的なコードはほとんど出てこない ● 独学でできた癖を修正する
Slide 17
Slide 17 text
生きたコードに触れさせる ● ペアプロで成功体験を積む ● ”できない”なりにどうするか ● 技術的な問題と進め方的な問題 ● 聞かざるを得ない状況を作る ● 開発の進め方やマインドセットも学ぶ ✔ 実案件に即投入
Slide 18
Slide 18 text
「言語化能力を高める」とは? ● 結局はプログラミング “言語” ● 言語能力低いと成長が遅い (”理解”に必要 ● 感覚部分(= 技術)を言語化することで再現性を高める ● 曖昧な表現や非論理的なことは徹底的に潰す ● 抽象化や概念の解像度を上げる
Slide 19
Slide 19 text
言語化能力を高める ● 週単位 ● 成功要因と失敗要因の抽出 ● 根本まで「なぜ?」を問いかけ続ける ● 失敗はほぼほぼパターン化する ● できること・できないことを認識 ● 週初で共有し自分の糧に ✔ 振り返りを徹底させる
Slide 20
Slide 20 text
言語化能力を高める ✔ 振り返りの良い例 ● 実際のシーンが想像できる ○ 言語化◎ ● 本でインプットしたことが実務で アウトプットできている ● 今後のアクション (keep)に本で のインプットを掲げている ○ 成功パターンの把握
Slide 21
Slide 21 text
言語化能力を高める ✔ 振り返りの悪い例 ● 「頑張る」は当たり前 ○ 何をどう頑張るか ● ブラッシュアップの具体性がない ○ ゴールが見えていない ● 「時間を作っていく」の具体性がな い ○ プロセスがない
Slide 22
Slide 22 text
「目標設定と管理」とは? ● 短・中・長期のなりたいエンジニア像 ● 目標は抽象的でもいい ● そのためのアクションプランを定量的に設定する ● 目標に対する現在地の確認 ● やり切ることが重要
Slide 23
Slide 23 text
目標設定と管理 ● ミッション・ビジョン・バリュー ● 会社と個人を全員で考える ● カスケードダウンでベクトル合わせ ● 社外の人も呼んで多角的に考える ✔ 春秋軍議
Slide 24
Slide 24 text
参考: USJを劇的に変えた、たった1つの考え方 成功を引き寄せるマーケティング入門 (角川書店単行本)
Slide 25
Slide 25 text
目標設定と管理 ● 目標に対して進捗面談 ● スキルの棚卸し ● 振り返りの壁打ち ● 会社からの期待 ● やらないことを明確化 ✔ 1on1
Slide 26
Slide 26 text
「業務時間内での自己学習」とは? ● 毎月20Hを好きな分野の学習に充ててよい ● アウトプットとセット ● 毎月学習成果の発表会
Slide 27
Slide 27 text
業務時間内での自己学習 ● 会社で購入した本をデータベース化 ● 社員には自由に本の購入を許可 ● 読んだら専用ページでアウトプット ✔ 春秋文庫
Slide 28
Slide 28 text
業務時間内での自己学習 ● 各本データに紐付けている ● ”理解”と”できる”を分ける ● 言語化することで理解の整理 ● 読む人は自分の理解・解釈の仕方が似 ている人を探すことができる (聞ける ✔ 春秋文庫 - アウトプットページ
Slide 29
Slide 29 text
業務時間内での自己学習 ● 毎月LTやハンズオンでアウトプット ● 実務や学習で得た知見の深掘りを共有 ● PJ固有の技術に縛られないキャッチ アップが可能 ✔ アウトプット会
Slide 30
Slide 30 text
未経験育成の成果例 ● 第一号社員にして最年長 ● 元沖縄県庁職員 ● Rails, GraphQL, React, Next.js ● 入社1年で詳細設計・社内レビュー担当 ● 入社1年半でクライアントとの窓口担当 ✔ 伍長 - T・A
Slide 31
Slide 31 text
まとめ - 自走するための春秋の取り組み ● 育成とは『自走力』を身につけさせること ● 生きたコードに触れさせて戦場 (現場)で学ぶ ● 振り返りで言語化能力を鍛える ● 目標(= 理想の状態 )と向き合う ● 学習し続けることは会社と個人にとって投資 ※ 今は少人数だからできているところもある ※ 将来はチーム単位での活用になりそう
Slide 32
Slide 32 text
次は『教える側の心得』をお伝えします。
Slide 33
Slide 33 text
みなさんは新人や部下に教える時、 何か気をつけていることはありますか?
Slide 34
Slide 34 text
それは『補助輪の機能 』に徹すること。
Slide 35
Slide 35 text
『教える側の心得』五箇条 ● 公式ドキュメントの読み方を教えるべし ● 伝え方・教え方は相手に合わせるべし ● 経験を伝えるべし ● 見守るべし ● ポジティブ FBは大胆にすべし
Slide 36
Slide 36 text
公式ドキュメントの読み方を教えるべし ● 一緒に読み合わせをする ○ 「ドキュメント読んで」はかなり乱暴 ○ 欲しい情報が別の用語や概念で説明されるので難しい ● 付随情報とセットで教える ○ 用語の解説、概念の具体化、実務ではどのように使うか ○ 実務での使用例は未経験者もイメージしやすいので質問を引き出せる ● バージョン違いによるミスリード ○ 未経験者にとっては盲点 ○ 例) Laravelでは5.6と5.7でヘルパ関数の書き方が違う ● 教える側にとって一番投資リターンが大きい ○ まずは道具の使い方を教えましょう
Slide 37
Slide 37 text
伝え方・教え方は相手に合わせるべし ● 相手の抽象度・具体度に合わせる ○ 「あの人はいつも抽象的」、「もっと具体的に言って」みたいなあのやりとり ○ 人間は具体→抽象は得意(心理学・認知科学 ● 伝え方のバリエーション ○ 文字, 図, 例え話(擬人化) … etc. ● 目標はコードレベルで会話できること ○ なるべくコードを用いましょう(実装例など ● 一番コストのかかる投資 ○ コミュニケーションを重ねないとわからない ○ まずは相手がイメージできるところから
Slide 38
Slide 38 text
経験を伝えるべし ● 未経験者にとって経験者は神 ○ 我々にもできなかった過去がある ○ 神でも最初は”未経験”から始まった ● 失敗談はかなり有効 ○ 神の失敗談は安心感をもたらす ○ 神はより身近な存在へ ● 方法論はその後 ○ 多くの場合は手法を聞かれる(エラーの解決など ○ 調べ方も教えるとプロセスとして手法が確立する (断片的ではなくなる ○ このプロセスが次の小さな成功体験に繋がる
Slide 39
Slide 39 text
見守るべし ● 口出しするな ○ 表情で応える ○ 自走するためのプロセスを奪ってしまっている ● 口出しするのは相手が沈んでいる時 ○ 諦めかけたり、心が折れかけたり、投げ出しそうな時 ○ 「なんでできないの?」は絶対に言わない ● 「見てくれている」という安心感 ○ 未経験者にとっては喜びでもある ○ 質問されるということは教える側にとって良いこと
Slide 40
Slide 40 text
ポジティブ FBは大胆にすべし ● できたことは一緒に喜びましょう ○ 成長プロセスを共有できている ○ その場で振り返りができる ○ 成功体験を積んだ実績 ● 褒めることを怠らない ○ プロセスではなく結果に対して ○ 難しい課題であればあるほど有効 ● 自信につながる ○ 自走するための最大の要因(自己効力感と自己肯定感
Slide 41
Slide 41 text
まとめ - 『教える側の心得』五箇条 ● まずは道具の使い方を教えましょう ● 抽象と具体の行き来 ● 経験 ⇒ 手法の順で ● 口出し厳禁 ● ポジティブ FB = 成功体験 = 自信
Slide 42
Slide 42 text
最後にメッセージ ... 相手と向き合い、 自分なりの育成法を見つけましょう!
Slide 43
Slide 43 text
ご清聴ありがとうございました Thank You