Upgrade to Pro — share decks privately, control downloads, hide ads and more …

JJUG会長と一緒に考えたSpring Boot x JavaScript x IntelliJ x アジャイルというモダンな新人研修を今まさにやっている話 #jjug_ccc #ccc_e6 /modern-new-employees-training-spring-boot-javascript-intellij-agile

JJUG会長と一緒に考えたSpring Boot x JavaScript x IntelliJ x アジャイルというモダンな新人研修を今まさにやっている話 #jjug_ccc #ccc_e6 /modern-new-employees-training-spring-boot-javascript-intellij-agile

JJUG CCC 2019 Springで発表した資料です。2018年・2019年に実施しているグロースエクスパートナーズ様向け新人研修の内容を紹介しています。

Masatoshi Tada

May 18, 2019
Tweet

More Decks by Masatoshi Tada

Other Decks in Technology

Transcript

  1. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    JJUG会⻑と⼀緒に考えた
    Spring Boot × JavaScript
    × IntelliJ × アジャイルという
    モダンな新⼈研修を
    今まさにやっている話
    (株)カサレアル 多⽥真敏
    2019年5⽉18⽇
    JJUG CCC 2019 Spring
    1

    View Slide

  2. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    このセッションについて
    ▸ 弊社で担当している

    グロースエクスパートナーズ(GxP)様向け

    新⼊社員研修を紹介します
    ▸ 実際やってみてどうだったかの知⾒を共有します
    ▸ 【対象】⼈事担当の⽅、OJT担当の⽅、

        新⼈研修を担当される⽅、

        その他教育に興味のある⽅
    2

    View Slide

  3. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    おことわり
    3
    100%
    宣伝です

    View Slide

  4. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    気になったキーワードはどれですか?
    ① 「JJUG会⻑と⼀緒に考えた」
    ② 「Spring Boot」
    ③ 「JavaScript」
    ④ 「IntelliJ」
    ⑤ 「アジャイル」
    4

    View Slide

  5. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    ⾃⼰紹介
    ▸ 多⽥真敏(@suke_masa)
    ▸ 研修トレーナー@カサレアル
    ▸ Spring / Java EE / Microservices

    / Cloud Foundry
    ▸ Pivotal認定講師
    ▸ ⽇本Springユーザ会スタッフ
    5

    View Slide

  6. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    株式会社カサレアル
    ▸ 他社には無い⾊々なプログラミング⾔語の研修
    を提供しています!
    6

    View Slide

  7. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    ⽬次
    ① JJUG鈴⽊会⻑からのメールと、

    従来型のJava新⼈研修の問題点
    ② モダンな新⼈研修とはコレのことだ!
    ③ 多⽥が担当していたA社様の新⼈研修
    ④ 実際やってどうだった?
    7

    View Slide

  8. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    ⽬次
    ① JJUG鈴⽊会⻑からのメールと、

    従来型のJava新⼈研修の問題点
    ② モダンな新⼈研修とはコレのことだ!
    ③ 多⽥が担当していたA社様の新⼈研修
    ④ 実際やってどうだった?
    8

    View Slide

  9. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    ある⽇、メールをふと⾒ると。
    9
    JJUGձ௕ͷླ໦༤հ͞Μ (@yusuke_arclamp)

    (౰࣌ɿάϩʔεΤΫεύʔτφʔζࣥߦ໾һɺ

    ݱɿάϩʔεɾΞʔΩςΫνϟˍνʔϜε

    ɹɹ ୅දऔక໾ࣾ௕)
    多⽥さん、こんにちは。
    従来型の新⼈研修では
    現場と乖離があるので、
    ⼀緒に作りませんか?
    (※原⽂ではありません)

    View Slide

  10. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    10
    (ɹƅшƅ) ɾɾɾ
    (ͭд⊂)ŠƄŢŠƄŢ
    (ʀƅшƅ) ɾɾɾ
    (ͭд⊂)ŠƄŢŠƄŢŠƄŢ
    ʢʀƅ Чƅʣ …ʂʁ

    View Slide

  11. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    お打ち合わせして分かった課題
    11
    https://www.slideshare.net/CASREAL_seminar/ss-112887909/36

    View Slide

  12. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    問題点① 設定された課題をこなすことがゴール
    ▸ 学習が受け⾝になってしまう
    ▸ 技術変⾰が次々と起こる現代では、

    主体的に学習する姿勢が重要
    12

    View Slide

  13. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    問題点② チーム内のコミュニケーションが古い
    ▸ 従来型研修
    13
    ▸ モダンな現場

    View Slide

  14. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    問題点③ そもそも技術がダサい
    ▸ 従来型のカリキュラム
    14
    IT基礎
    コンピューターの基礎、
    ネットワーク、データベース
    Java
    変数、制御構造、クラス、

    継承、インタフェース、API
    Web
    HTML/CSS、サーブレット、
    JSP、セッション、JDBC
    開発演習
    ECサイトなどの

    設計・開発・テスト
    15年以上
    変わってない
    (Java SE 5
    × J2EE 1.4)
    JavaScript
    は扱わない
    Gitなども
    扱わない

    View Slide

  15. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    なぜ弊社も従来型研修を続けていたか
    ▸ モダンな新⼈研修を作っても、

    お客様が導⼊してくれるか不安だったから
    ▸ お客様からの要望は「『Webの基礎』をフレームワークに
    依存せず⾝につけさせたい」がほとんど
    ▸ St◯utsな現場もまだ世の中には多い
    15
    GxP様が導⼊決定
    → 思い切った研修を作ることに

    View Slide

  16. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    ⽬次
    ① JJUG鈴⽊会⻑からのメールと、

    従来型のJava新⼈研修の問題点
    ② モダンな新⼈研修とはコレのことだ!
    ③ 多⽥が担当していたA社様の新⼈研修
    ④ 実際やってどうだった?
    16

    View Slide

  17. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    研修のゴール
    ▸ クライアントサイドからサーバーサイドまで、

    ⼀通り⾃分で作れる
    ▸ 各種公式ドキュメントでの「調べ⽅」を

    ⾝につけている
    17

    View Slide

  18. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    技術スタック
    18
    クライアント サーバー
    リクエスト
    レスポンス

    (JSON)
    ▸ いわゆるSPA(Single-Page Application)
    JDK 11

    View Slide

  19. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    React
    ▸ UIを構築するためのJavaScript

    ライブラリ
    ▸ Facebook社がオープンソースで開発
    19

    View Slide

  20. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    Spring Boot
    ▸ 現在広く使われている

    オープンソースのJavaフレームワーク
    ▸ サーブレットAPIはほぼ完全に隠蔽されている
    ▸ 新⼈研修レベルではサーブレットの知識は不要と判断
    20

    View Slide

  21. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    サーブレット・JSP・JDBCは扱わない!
    ▸ サーブレットはSpring Bootで隠蔽されている
    ▸ JSPはそもそも使わない
    ▸ JDBCはORマッパーで隠蔽されている
    ▸ Spring Data JDBC または MyBatisを利⽤
    21

    View Slide

  22. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    JDK 11
    ▸ JDKのLTSとしては最新版
    ▸ 2019年5⽉現在
    ▸ AdoptOpenJDKを採⽤
    ▸ リリース後に半年が過ぎてもLTSが提供される、

    ⾃宅学習でもライセンスを気にせず使える、

    などが採⽤理由
    22
    ※JDK: Java Development Kit

    ※LTS: Long Term Support

    View Slide

  23. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    開発環境
    23








    ローカルPC
    研修サーバー

    View Slide

  24. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    IntelliJ IDEA
    ▸ Java開発のIDE
    ▸ 弊社はJetBrains社とトレーニングパートナー契約を
    結んでいるので使い放題
    ▸ しかもAll Products Pack
    ▸ 国内でも採⽤する企業様が増えている
    ▸ Eclipseは書籍もネット情報も多いが、IntelliJはまだ少ない
    24

    View Slide

  25. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    GitLab
    ▸ Gitリポジトリ兼CIサーバー
    ▸ その他、Dockerイメージリポジトリや

    Mavenリポジトリとしても利⽤可能
    ▸ .gitlab-ci.ymlをリポジトリ直下に置けば、

    そこに記述された処理でCIできる
    25

    View Slide

  26. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    Docker
    ▸ コンテナ技術のデファクトスタンダード
    ▸ 今回はGitLabサーバー上で疑似クラウドとして
    利⽤
    26

    View Slide

  27. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    全体カリキュラム
    27
    次にJavaScript
    システム開発全体の
    流れやGitなど
    Java +
    Spring Boot
    最後に
    ワークショップ
    ※カレンダーは2018年度ですが、

     2019年もほぼ同じカリキュラムです

    View Slide

  28. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    ⽇々の進め⽅
    ▸ ハンズオンによる最⼩限のインプットと、

    チームorペア演習によるアウトプット
    28

    View Slide

  29. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    Webシステム構築ワークショップ
    29

    View Slide

  30. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    Webシステム構築ワークショップ
    30

    View Slide

  31. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    ⽬次
    ① JJUG鈴⽊会⻑からのメールと、

    従来型のJava新⼈研修の問題点
    ② モダンな新⼈研修とはコレのことだ!
    ③ 多⽥が担当していたA社様の新⼈研修
    ④ 実際やってどうだった?
    31

    View Slide

  32. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    新⼈研修の体制
    32
    @yamamotokaoru77
    GxP様メイン講師
    全体の取り仕切り
    JavaScriptコンテンツ作成
    @suke_masa
    A社様メイン講師
    進め⽅のアイデア出し
    Spring Bootコンテンツ作成
    @zer0_u
    GxP様サブ講師
    演習のサポート
    Javaコンテンツ作成
    GxP様担当 A社様担当

    View Slide

  33. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    JDK 11
    A社様向け技術スタック
    33
    クライアント サーバー
    リクエスト
    レスポンス

    (JSON)
    B Bootstrap

    View Slide

  34. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    GxP様向けカリキュラムとの違い
    ▸ クライアントはjQuery + Bootstrap
    ▸ 多⽥がReact未経験だったため
    ▸ 開発演習はA社様内で実施
    ▸ アジャイルな進め⽅ / Dockerは導⼊を⾒送り
    ▸ ソースコード解析ツールを導⼊
    34

    View Slide

  35. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    ソースコード解析ツール
    ▸ ESLint (JavaScript向け解析ツール)
    ▸ Checkstyle (Java向け解析ツール)
    35
    例年の他社様研修と⽐較して、
    明らかにコードが綺麗になった

    View Slide

  36. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    ⽬次
    ① JJUG鈴⽊会⻑からのメールと、

    従来型のJava新⼈研修の問題点
    ② モダンな新⼈研修とはコレのことだ!
    ③ 多⽥が担当していたA社様の新⼈研修
    ④ 実際やってどうだった?
    36

    View Slide

  37. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    鈴⽊さんの感想
    37
    https://www.slideshare.net/CASREAL_seminar/ss-112887909/37

    View Slide

  38. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    講師の感想
    38
    https://www.slideshare.net/CASREAL_seminar/2018-111874250/30

    View Slide

  39. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    講師の感想(つづき)
    39
    https://www.slideshare.net/CASREAL_seminar/2018-111874250/31

    View Slide

  40. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    多⽥の感想
    ▸ JavaScript → Javaの順番で学ぶのは⾮常に良い
    ▸ 早い段階から、GUIで実⾏結果を⾒れるから
    ▸ IntelliJの設定がプロジェクトごとに必要で⾟い
    ▸ GitLabのテスト結果出⼒がショボい・・・
    ▸ 学ぶ範囲が広いので、要所要所でまとめ・復習を
    ⼊れたほうが良い
    40

    View Slide

  41. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    サーブレット・JSP・JDBCは教えなくてもOK
    ▸ これらの知識がなくてもSpring Bootを学習する
    ことは可能
    ▸ ただし、動作の仕組みをどうやって説明するかは⼯夫
    が必要
    41

    View Slide

  42. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    最⼤の課題
    ▸ 企業様によって合う/合わないが分かれる
    ▸ カリキュラムが独特なので仕⽅ない⾯も
    ▸ 実際、2019年度はGxP様・A社様ほか計3社のみ
    42

    View Slide

  43. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    従来型の新⼈研修に満⾜できない企業の皆様、
    お問い合わせ待ってます!
    ▸ Web -> https://www.casareal.co.jp/ls/
    contact/i
    ▸ Twitter -> @suke_masa にDM/リプライ
    ▸ メール -> [email protected]
    43

    View Slide

  44. (C) CASAREAL, Inc. All rights reserved.
    #jjug_ccc #ccc_e6
    ご清聴ありがとうございました!
    44

    View Slide