この記事はGMOペパボ Advent Calendar 2017の22日目の記事です。
こんにちは、今年入社した新卒エンジニアのしずちゃん(@nahc_uzihs)です。本日12月22日は新卒エンジニアが4月から受けてきた研修の最終日!ということで、その内容や学んだこと、感じたことを書いていきたいと思います。
ペパボ新卒エンジニアの研修は下記の3つのフェーズに分かれています。
- 職種共通研修
- 基礎研修
- OJT
職種共通研修、基礎研修については、各研修を担当してくださった先輩方が記事を書いているので併せてご覧いただければと思います。
職種共通研修
4月に入社して約2ヶ月間、ディレクター・CS・デザイナー・エンジニア全ての職種の新卒が全員で同じ研修を受けます。 まずは東京で1ヶ月、「知る」ための研修がありました。ここではチームビルディングワークショップで同期のことを知り、役員の方と交流してペパボのことを知り、インタビューに同行しお客様を知りました。このフェーズを経て、「一社会人としてペパボで働く」という認識をしっかりと持つことができたと思います。
東京での1ヶ月が終わると、次は全員で福岡へ旅立ち、「わかる・なじむ・やってみる」ための研修です。 ここではサービスの課題解決にチームで取り組み発表を行う研修や、実際のお客様からのお問い合わせに返信をする研修を行いました。実際のサービスに関わる業務を先輩方にフィードバックをいただきながら行うことで、サービスやお客様について理解を深めながら、様々な課題にチャレンジすることができました。 また、普段ディレクターさんやCSさんが行なっている業務を体験することができたことも貴重な経験なので、ここで得た課題感やお客様の生の声を忘れずに今後働いていきたいと感じた研修でもありました。
基礎研修
2ヶ月間の職種共通研修が終わり東京へ戻ってくると、ついに待ちに待ったエンジニア研修が始まります。 基礎研修は、「Web開発研修」「お産ウィーク」「Webオペレーション研修」「モバイル研修」の4つのフェーズに分かれています。また、基礎研修期間を通して「読書会」「座学」「ふりかえり会」が行われます。
Web開発研修
Web開発研修では、Ruby on Rails チュートリアルをそれぞれ進めることでWeb開発の基礎を学びます。 私は学生時代にWeb開発の経験がなく、RubyどころかHTMLやCSSについても知識がほとんどなかったため、不安を抱えてのスタートでしたが、Web開発経験がある同期に助けてもらいながらチュートリアルを完遂することができました。しかし、もう一つの課題であったJSON APIの実装は途中で終了となってしまいました。これについては、振り返り等でなぜ完遂できなかったかを考えることで、「研修の本来の目的を達成するためにまず最短の道のりを歩むべきだった」という反省点を見つけ、次に繋げることができました。
また、この研修ではそれぞれにGitHubでリポジトリを作成し、1章ごとにプルリクを作って開発を進めていきました。プルリクへのレビューは同期同士で行うことで、ペパボで日常的に行われている開発手法を体験しました。 このプルリクベースの開発については初め全員が苦戦し、「どのようなプルリクを作ればよいかわからない」「何をレビューしたらよいかわからない」などの悩みを振り返りで何度も話し合いました。しかし、振り返りでの話し合いを重ね、「プルリクの形式を揃える」「コミットの粒度を調整する」などの工夫をすることで、プルリクベースでの開発手法を身につけることができたのではないかと思います。
お産ウィーク
Web研修の次は、同期のデザイナーと5日間でテーマに沿ったサービスを企画開発する「お産ウィーク」です。ここではデザイナー1名エンジニア2名のチームとなって、「みんなが見る!イベント一覧サービス ペパプロ」と「みんなの今がわかる!プロフィールサービス なかにわ」の開発を行いました。 チームでのWebサービス開発の経験がない中で、企画がなかなか決まらなかったり分業に苦戦したりしながらも、メンバーがそれぞれに支えあってなんとかサービスを完成させることができました。 また、Ruby on Rails チュートリアルで得た知識を実際に使ってサービスを完成させることで、Web開発研修での学びがしっかり身についている!という自信も得ることができました。
Webオペレーション研修
お産ウィークでのサービス開発で団結力を高めた後は、Webオペレーション研修を受けました。この研修ではエンジニア4人全員で1チームとなり、Web開発研修で作ったRailsアプリケーションのインフラを1から構築しました。 全員がインフラ構築未経験で、私は「Dockerってなんの役割があるの?」「デプロイって何してるの?」状態だったので、この研修が全ての中で最も苦戦しました。わからないなりに自分たちで計画を立てるもどんどん崩れて行き、当初決まっていたゴールまではたどり着くことができませんでした。
しかし、自分たちだけでは解決できない時には研修担当の先輩に教えていただいたり、時にはインフラ担当の先輩に質問をしながら進めることで、インフラ構築の基礎部分について本当に多くのことを学ぶことができました。 また、時間も知識もない中で目的を達成しなければないという状況の中で、初め全てのことを全員が理解しなければ前に進めなかったのが、それぞれに専門部分を持ち、お互いに頼りながら進められるようになりました。こうして「分業」を身につけることができたのが、大きな収穫だったと感じています。
モバイル研修
インフラ構築を行なった次は、自分たちで作ったRailsアプリケーションをバックエンドとしたiOSアプリの開発を、2人ずつのチームで行いました。ここでは今までのWeb開発研修、Webオペレーション研修と違い、作成物の明確なゴールはなく、「Rails APIと通信する機能がある」という制約のみでサービス内容を考えるところからスタートしました。 サービス内容を考えるにあたり、初めは「流行りのARをしたい!」などと夢を膨らませましたが、今までの研修の反省を踏まえ、まずは最小限の機能だけを実装するゴールを設定しました。余裕をもたせた計画を立てることで、研修の中で初めて100パーセント計画通りに開発を進めることができました。さらに、ここでは「紙に書いたモックを使ってユーザーテストを行う」「テストツールを導入してコードの質を担保する」など、実際のサーヒス開発により近い経験をすることができました。
私は大学生の時からiOSアプリを自分で作っていたので、ある程度の知識を持って研修を受けたのですが、アニメーション実装やUIテストなど、今まで触れていなかった部分に積極的にチャレンジすることができました。またチームを組んだ同期がWeb開発の経験が豊富だったので、「Webではこんな風に実装できるんだけどアプリはどうなの?」という質問をたくさん受け、今まで自分になかった視点からの発見をたくさん得ることができました。これは、バックグラウンドの違う同期と一緒に研修をしたからこそ得られたことだと感じました。
サイクルOJT
基礎研修でWebアプリケーション・インフラ・モバイルと幅広く基礎知識をつけた後は、いよいよ社内のサービスに関わるサイクルOJTです。ここでは2週間ごとにカラーミーショップ、minne、グーペ、SUZURIの4サービスを周り、実際に今チームが抱えている仕事を担当しました。 OJTでは今までと違い、「実際に会社のサービスとして世の中に出るものを開発する」ということに責任を感じ、とても緊張しました。しかし、メンターの先輩方が常に手厚くサポートしてくださったので安心して開発を進めることができました。実際に自分が書いたコードがサービスの一部として動いているのを初めて実感した時はとても嬉しかったです。
また、今までの研修では私たちが躓くことに対して先輩が必ず答えを持っていて、そこに導くアドバイスをくれるという環境だったのが、OJTでは今までサービスで使われていなかったツールを導入するなど、先輩も答えを持っていない課題に取り組む場面が何度か訪れました。自分で考えても先輩に聞いても解決しない問題に諦めかけることもありましたが、メンターの方が何度も一緒に考えてくださったり私の意見を聞いてくださる中で、なんとか自分で解決できサービスに価値を提供できた時は、とても感動し「もっともっと頑張ろう!」という思いになりました。
短期間ではあるもののたくさんのサービスに携わり、そこで働く多くの先輩から学ぶことができるのも、新卒研修ならではのとても貴重な経験であったと思います。
まとめ
4月に入社してから今日まで、ペパボ新卒エンジニアとして自分が受けてきた研修を振り返ると、常に新しく学ぶことばかりだったと感じています。
特にエンジニアの基礎研修では、インプットするフェーズがほとんどであったため、「本当に身についているのか」「今わかったつもりになっているだけなのではないか」と不安になることが何度もありました。しかし、OJTで実践的な開発をしていると、基礎研修で得た知識が役に立っていることを実感することが多くありました。
研修を受けるまで呪文のようにDockerのコマンドを叩いて開発環境を作っていたのが、開発環境が動かない時に自分で設定ファイルを見て修正ができるようになっていたり、テストを書くということを全く考えていなかったのが、新しく作った実装に対して自然にテストを書くようになっていたりと、確実に自分が成長しているのを感じることができました。
とはいえ、今回研修を通して学んだことはエンジニアとして働く上では当たり前のことばかりであり、まだまだ学ばなければならないことはたくさんあると思います。しかし、この8ヶ月間で得た成長は確実に自信につながっています。ここで得たものを元に今後もさらに成長し、ペパボで活躍できる人材になっていきたいと思っています。 また、研修を全体的に担当してくださった、私たちの1年先輩であるスンさん(@asuforce)しもじゅーさん(@shimoju_)をはじめ、研修に関わってくださった全ての先輩方がみなさん本当に全力でサポートしてくださったことが、今回成長できた一番の理由だと思っています。このことへの感謝を忘れず、あと数ヶ月後には入社してくる未来の後輩たちの成長に少しでも貢献するためにもより一層努力をしていきたいです。
最後まで読んでいただきありがとうございました。 この記事を読んで少しでもペパボやペパボの研修に興味を持っていただけましたら幸いです。
先日公開された新卒サイトもぜひご覧頂ければと思います。研修を終えたエンジニアの先輩の仕事風景や様々な職種の先輩方のインタビューなどが掲載されています。
また、1月に行われる「師弟登壇」というイベントで、この記事では書ききれなかった研修での成長を後押ししてくれたペパボの文化についてお話しさせていただきます。研修担当をしてくださった先輩も登壇し、何を考えて研修を作り上げたかなどをお話しします。 こちらもぜひご参加いただければと思います。