グリー新卒研修2014 ふりかえり
はじめまして、開発企画室の三木です。グリーではエンジニアの採用・教育・PR等、バックオフィス周りを色々と担当させて頂いています。
今回は、今年の4月に晴れてグリーに入社した新卒たちが技術研修を終了し各チームに旅立っていきましたので、本年度の技術研修を振り返り、どんな内容だったのかざっくりとご紹介したいと思います。
超今更感はありますが(もはや夏ですね・・・)、最後までお付き合いください。
はじめに
グリーでは新卒が入社すると(職種にかかわらず)約半月の導入研修を最初に受講します。ここでは社会人としてのマインドセット、ビジネススキルを身に付けるために、ビジネスマナー、チーム単位でのグループワーク課題などを一通り行います。
その後に技術研修がスタートするのですが、本年度は以下3つのラインナップで実施しました。
- GREE BootCamp(エンジニア共通技術研修)
- プログラミング基礎研修(企画職/総合職/クリエイターが対象)
- インフラ技術研修(インフラ部門のエンジニアが対象)
本年度の技術研修は、従来の研修コンテンツの見直し、受講対象者の拡大・・・と大幅にバージョンアップしました。企画・指導側としてはなかなかに大変な研修となりました。
本記事では、ひとつずつご紹介していきたいと思います。
GREE BootCamp
GREE Bootcampは、グリーに入社した新卒/中途エンジニアには以下を狙いとして必ず受講してもらっている共通技術研修です。
- グリーの開発スタイルや、使用しているフレームワークに慣れる事で、チームにスムーズに合流
- グリーのエンジニアが行う「企画から実装まで」を小さなレベルで体験
本年度は、約20名の新卒エンジニアが受講しました。以下のカリキュラムを、約6週間かけて行います。なお、基本的にチーム制ではなく個人制です。
- 開発環境の構築
- 座学による開発知識の習得
- セキュリティ資料の輪読
- 各フレームワークのチュートリアル実施
- GREEプログラミング演習
- アプリケーション構築課題
研修では、1週間を1Sprintとして設定して、最初に計画を立てる時間と最後に成果発表・KPTの時間を設けました。また、朝会や相互レビューで各自の課題や進捗を共有してもらうようにしました。
なお、指導は研修チームの専属コーチが2名で行ったのですが、ドキュメントを正しく書く習慣をつけるよう、作業記録や設計文書に対してコーチから毎日コメントを付けるようにしました。
座学については、社内の有識エンジニアによる講義と、資料・動画を閲覧する形式をおりまぜて実施しました。ラインナップは以下の通りです。
- グリーのエンジニアマインド(by CTO)
- エンジニアの基礎知識(git、ソフトウェアテスト、認証、プロファイリング)
- グリー特有の開発知識(開発環境、基盤技術、サーバ、ネットワーク、アプリケーション、ログシステム)
- 社内ガイドライン(リリース作業手順、障害対応、特許)
最後のアプリケーション構築課題では、3週間という期間で新卒が作りたいサービスを企画・実装します。ログイン認証がある、スマートフォン対応など最低限の要件を提示し、サーバ&クライアント(JavaScript または iOS または Android)構成のアプリケーションを開発してもらいました。バックエンドの開発言語は、原則としてphpを使用してもらいました。
この課題では、以下のようなポイントを踏まえて指導しました。
- サービスのビジョンを整理(Lean Canvas、Product Canvasを使ってみる等)
- 開発プロセスについて基本を理解(スクラム、DDD等)
- 画面遷移・通信仕様の整理
- 利用する技術の詳細やシステムのアーキテクチャの整理
- 社内のコーディング規約を守る
- 研修環境のサーバへのデプロイを経験してみる
最終日には、社内のセミナールームで成果物のプレゼンテーションを実施しました。配属予定の各チームのメンターを始め社内から集まったオーディエンスの前で、順番にサービスのデモを行ってもらいました。3軸加速度センサーを使った歩数計や、外部API(Twillio)を利用した音声ファイル共有サービスなど、それぞれ個性的で興味深いサービスが発表されました。
まだ配属先に合流して間もない彼らですが、GREE BootCampで身に付けた技術・経験を元に、各チームで新しいサービスや機能を産み出していって欲しいと思います。
プログラミング基礎研修
今回の研修の初の試みとして、非エンジニア職(企画職・総合職・クリエイター)向けのプログラミング研修を実施しました。
背景としては、研修の企画段階において社内で意見交換を行う中で
「そもそもインターネットサービスの会社だし最低限の知識は理解しておく必要があるよね」「エンジニア以外の人もプログラミングを理解していれば、各チーム内での生産性・コミュニケーションも良くなるよね」
という意見があったのが発端です。ではどのあたりの知識を身につけてもらったら良いか、という摺合せを行った上で、以下をゴールラインとして設定し研修を実施しました。
- WEBサービスの仕組みを理解すること
- HTML/CSSでWEBサービスのモックが作れるようになること
- データベースからデータ解析に必要なデータを取得できるようになること
GREE BootCampとの並行運用、また対象者が50名以上という大人数だったため、研修の運営体制が課題でした。そこでコーチに加えて複数のエンジニアにも協力してもらい、各チーム(5-6人)につき1人のメンターがフォローするという体制で臨みました。また、知識をインプットするだけでは効果が薄いので、実際に手を動かしてやってみながら覚えてもらう、という指導方針で行いました。
カリキュラムは、以下の通りです。期間は、エンジニアと同じ約6週間です。
- 開発環境構築
- HTML/CSS入門
- Bootstrap入門
- MySQL入門
- PHP入門
- Smarty入門
- CakePHP入門
- データ分析演習
- Webサービス開発演習
各カリキュラムごとに、[動画で視聴]->[自分で課題をやってみる]->[メンターが合否判断]->[合格したらNext Step]、というサイクルで進めました。当然分からない事にいっぱい直面しますが、その場合はとにかく検索&ログを読む、という事を徹底してもらいました。
また、非エンジニアとはいえ自分でサービス開発した経験がある人もいるので、研修進捗に差が出てくる事を考慮しスケジュールにはある程度の自由度を持たせておきました。
最終日にはエンジニア同様、メンターから推薦を受けた優秀な新卒によるWebサービスのプレゼンテ―ションを行いました。モックレベルとしてはかなりハイクオリティなアプリが出来上がってきたため、非エンジニアとは思えない予想以上の完成度に、オーディエンスからも驚きの声が上がっていました。
どのくらい効果的で有意義な研修となったのかは、配属部署における彼らの今後のパフォーマンス次第だと思うので、期待したいと思います!
また、今回は試験的な運用でしたが、今後も機会があれば研修対象を拡大するなど、継続的に行っていく事も視野に入れています。
インフラ技術研修
GREE BootCamp終了後、基本的にエンジニアは各部・各チームに配属となるのですが、インフラ部門に配属になった人はさらに1か月以上研修が続きます。現在まだ研修の真っ最中ですが、簡単に内容をご紹介したいと思います。
インフラの研修は、習得する内容に合わせて、ふたつのStepにプログラムを分けています。
- Step1:一般的なインフラの知識・技術・経験を習得
- Step2:グリーでのインフラ構成の運用・管理方法を習得
Step1は、個人ワークとグループワークで構成されます。まず個人ワークでは、一般的なWEB構成、 DB構成を構築するという課題に取り組んでもらいました。次にグループワークでは、新卒を2チームに分けて、LAMP環境のパフォーマンスチューニングの競技を行ってもらいました。具体的にはチケット販売サイトにおける3日間のチケット販売数を競う、というものです。毎日測定会を実施し、最終日にスコアの発表と、チューニングの過程で工夫した点などの成果プレゼンを各チームから行ってもらいました。
※こちらの大会(ISUCON2)で使用されていたソースコード(チケット販売サイト+ベンチマークツール)が公開されていましたので、アレンジして題材として使用させて頂きました。
Step2では、グリーの基本的な本番環境やミドルウェアの仕組み・運用方法について理解を深めてもらうため、各講義を行いました。ラインナップは、グリーの本番環境、Webシステム(LVS-リバースプロキシ-アプリケーションサーバ)、MySQL、NoSQL(Memcached,Flare)、画像配信、モニタリング、セキュリティ等です。また本年度からの重視項目として、仮想化(OpenStack)とChefを追加しました。各担当チームのエンジニアより講義を行い、その後復習のため課題を解く、という形式で進めました。
Step2終了後は、チームに合流し、OJTベースでグリーのインフラ環境の運用を一通り経験してもらう予定です。
最後に
グリーでは新卒向けの技術研修を体系的に整備し始めてから今年で3年目になりますが(それまでは中途エンジニアの採用がメインだったので、新卒向けにはそこまでちゃんと整備していませんでした)、事業環境の変化や、社内のニーズにあわせて研修内容をスケールアップしてきました。
グリーでは現在、新卒エンジニアの採用を通年実施してますので、関心のある方は是非ご応募ください!(すいません、宣伝でした)
また機会あれば、グリーのエンジニアリングを支える制度、取り組みのご紹介をしたいと思います。