ニジボックスの研修を何個か企画して実施したので、その内容を紹介します。
JavaScript 研修
JavaScript の研修です。古川が担当しました。研修の内容としては JavaScript の基本文法から文法内容を使って簡単な関数を書くパートが前半、後半は小さいアプリケーションを何のフレームワークも使わずに書いてみるところまで、ほぼ丸一日かかる6時間の研修です。
リクルートの JavaScript Bootcamp の内容がベースですね。
かなりインタラクティブな講義で、参加者がただ座学的に受けるというよりは、聞いた内容に対して質問してもらい、受けた質問から展開して、色々説明します。
イベントループの話みたいな若干マニアックな話から、ページネーションをどうやって実装するかという実践的な話もしてました。
この画像はページネーションをどうやって実装するかを解説してるところですね。
ページネーションの元ネタはここにまとまってます。
スピードハッカソン
こちらも既に記事になっていました。リクルートでも実際やっていた活動をそのままニジボックスに転用した感じですね。
スピードハッカソンは実際のサービスを使って高速化をするハッカソンです。 Lighthouse の性能のスコアで競います。
第一回目のスピードハッカソン研修では、ニジボックスのブログサイトを使って高速化しました。実際に高速化をしようとすると、チューニングのポイントがわかるだけじゃなく、ブラウザの中の動きやネットワークの動きなどを見るきっかけになり、それがフロントエンドのエンジニアリングの理解にも繋がるので非常に効果的な研修でした。
JavaScript/TypeScript 研修
先週と今週(3/4と3/11)で行われている研修ですね。最初に JavaScript の研修をやった後、 TypeScript で作ったアプリを書き換えるという事をします。
リクルート内のメンバーが講師になり、一緒になって研修します。
JavaScriptのコードを「あーでもない」「こーでもない」と一緒に議論しながら進めることができて、育成しながら一つのアプリケーションを TypeScript できっちりしたコードにするところまでを目指します。
ニジボックス研修について
ニジボックスの開発現場は必ずしもモダンな開発現場ばかりではなく、むしろレガシーな環境のが多いです。ただし、その中でエンジニアリングが不要なわけではありません。レガシー環境であろうとモダンな環境であろうと、一般的な原理原則(テストをしっかり書く、コードの変更可能性を最小限にする、など)を理解している必要があります。
どんな現場に配属されたとしても役に立つような知識をインプットし、全体の底上げをしつつ、徐々に教えるレベルも上げていきたいと思っています。
次回以降の研修では、「ブラウザがどうやって動いてるか」や「フレームワークを入れずに作ったアプリをフレームワークを導入することでどう変わるか」といった基礎と応用の両方を教えられるようにしていきたいと思います。