この記事はpepabo Advent Calendar 2016の22日目の記事です。
こんにちは、来年からインフラエンジニアのスンです。皆さんいかがお過ごしでしょうか?
今年4月にペパボに入社し、今日(2016/12/22)まで研修に励んでいました。6ヶ月に渡るエンジニア研修がついに終わり、来年の1月の配属を楽しみに待っている状態です。
研修が終わったということで、エンジニア研修での体験をふりかえりたいと思います。と言っても研修内容については、我らがスーパーバイザーで、永遠のメンターであるじょーさんが書いてくださっているので、以下を合わせてご覧頂きながら、お読みいただけるとわかりやすいと思います。
入社
学生という枠の中では年長者に位置していた13人が、社会人になりまた赤ちゃん同然の状態からスタートを切りました。その時の心境については以下のエントリーを御覧ください。
同期と3ヶ月に渡る全体研修を受け、その後は職種別の研修です。いよいよエンジニア研修の始まりです。
研修の全体の流れは以下の図を御覧ください。
全職種の研修 | エンジニアの基礎研修 | サイクルOJT |
---|---|---|
4〜6月 | 7〜9月 | 10〜12月 |
基礎研修
ペパボのエンジニア研修はこの基礎研修からスタートします。基礎研修は3ヶ月あり、Webアプリ、インフラ、iOSアプリを学びます。全体研修ではエンジニアリングに関することは少ししか触れなかったので、エンジニアの基礎研修はとても楽しみで、期待して挑みました。反面、自分の技術力が通用するのか、同期はみんな凄いんじゃないかっていう不安もありつつのスタートでした。
Web開発研修
Rails TutorialというRailsアプリケーションを作成するテキストを読みながら実際にコードを書き進める研修でした。これは個人個人で進めていくスタイルの研修なのですが、朝夕と共有会が開かれます。Rails Tutorialは一周した経験があったのですが、バージョンアップされており新鮮な気持ちで取り組むことができました。
爆速で進めていた自分とは異なり、同期達は深い部分にまで疑問を持って、じっくり取り組んでいたのが印象的でした。周りにそういった人がいるおかげで時にはRailsのソースを追いかけるということもあって、自分だけでは体験できない事を見聞きすることが出来たと思います。
チュートリアルが一通り終わった後も、API化するといった発展課題が残されており、非常に楽しく取り組む事ができました。APIの所ではけっこう苦戦してしまい、認証の部分が作れなかったのが心残りでしたが、JWTを使った実装を体感することができました。
それまではなんとなくで作っていたアプリケーションの構造を再度学びなおすことで、知識が整理され、どうしてそう作るのかという部分を考えながらコードを書くことができるようになりました。
Webオペレーション研修
僕自身は入社前からインフラエンジニアを志していたので、Webオペレーション研修は大変楽しみにしていた研修でした。実際の研修はこんな構成を作ってほしいというお題を出されて、2チームに分かれてそれぞれの構成を作っていくといったものでした。
週ごとに1人ずつ入れ替えることで引き継ぎの経験も行いました。しかし、未経験者が多くなかなか進まなかったのが影響し、最終的に1チームに統合されることになりました。
全員で協力し1つの構成を作るのは分業の難しさもありつつも挑戦することも多々ありました。人数が多いと誰が何を担当しているのかが不透明になってしまい、誰かがやってくれているという気持ちが生まれます。その結果お互いの認識に齟齬が生まれてしまい、結果的にチーム全体の損失になるといった事がありました。
そこから全体を管理する役割を立て、タスクの管理を見直しました。その結果、STNSの導入を行い管理者のアカウント管理を円滑にするなどの挑戦も行うことができました。
構成管理の重要性やPuppetの書き方、Capistranoを使ったデプロイ、構成のRSpecやSTNSを使った鍵管理、社内プライベートクラウドの利用などツールだけでも様々なものを学びました。研修の終盤に、ペパボ初の「ISUCON」が開催され、同期チームで挑み、幸運にも東京勢で唯一生き残ることができました。
Webオペレーション研修では色々やり残した事はあったのですが、同期とチーム開発をしながらたくさんの事を学べました。例えば、サーバーの設定をコード化し冪等性を保つのは非常に緻密な設計が必要であり複雑ですが、保守性を保ち安心して利用できるサービスを提供するためには必要不可欠だということがわかりました。 何よりインフラエンジニアの仕事を垣間見られたので更にその道を進みたい気持ちが強くなりました。
モバイルアプリ研修
インフラの興奮が冷めやらぬまま、モバイルアプリ研修に突入しました。これまで作ったWeb、インフラを活用したiOSアプリを作成するのがこの研修の課題です。具体的にはRailsアプリを自前のインフラで動くようにする、Railsで作ったAPIのエンドポイントにiOSアプリからアクセスし、何かしらの動作をさせるといったものです。
iOSアプリは学生の頃に挫折していたので苦手意識を抱えてのスタートでした。ここで僕はsunriseカレンダーを復活させたいという思いから、sunsetカレンダーをまたくと共に作りました。
これはカレンダーの日付を押すと、その日投稿したマイクロポストが表示されるという、ツイート閲覧クライアントのようなものです。デザインに拘り、グラデーションをさせたり、カレンダーの表示調整をしました。
途中でiOSアプリが来年からhttps化が必須の情報をキャッチアップし、インフラの構成を変更して自力でhttpsに変更することに挑み、見事達成できました。 後述するお産ウィークが途中で入るのがわかっていたため、早い段階からすべての機能は作れないと判断し、終了日までに完成させることができる機能の洗い出しを行いました。
また、機能のテスト面でもコードでできるテストには限界があることがわかり、社内iOSエンジニアのしゅんしゅんさんに相談して、自分たちのレビュールールを組み立てることができました。結果的に満足するものができiOS開発の楽しさを実感することができたとともに、チーム開発においてのレビューの仕方や分業方法などを身につけることができました。
モバイルに対する苦手意識は無くなり、自分でもできるのだという自信になりました。Webアプリとの違いも認識し、Webアプリに向いているものモバイルアプリに向いているものを考えることができるようになりました。
お産ウィーク
お産ウィークはデザイナーと共同でサービスを作る研修です。2つのチームに別れるのですが、新卒エンジニアが5人、新卒デザイナーが1人だったため、デザイナー1人とエンジニア2人、残りのエンジニア3人というチーム分けになりました。僕は後者のチームだったのですが、やはりデザインでつまずきましたが結果的にデザインライブラリを導入してうまく見た目を整えることができました。
アプリケーションを開発し発表するまでを7日間で一気に行うので、非常に大変でしたが、自分たちで作り上げることができてより一層、自信をつけることができました。
最後のふりかえりでデザインの話になった時に、エンジニア的には良いデザインでもユーザーの視点からだとどうだろうという疑問をスーパーバイザーのおっくんに投げかけられたのが印象的でした。エンジニアだからデザインを考えないとかではなく、デザインに興味を持つなど色々な視点で見ることがプロダクトをより良いものに成長させるのだと考えました。
座学
週に2回幅広い職種・役職の先輩による講義が開かれました。色々な話を聞けるのは非常に刺激的かつ、考えさせられることもありました。
また社内には様々なタイプの人がいて、それぞれが自分の好きなことやプロフェッショナルな分野について熱く話されている姿を見て、自分自身がそうなりたいと思うようになりました。
サイクルOJT
3ヶ月の基礎研修も全て終了し、いよいよサイクルOJTが始まりました。この研修ではサービスを2週間ごとに回り実際の業務を行います。今まで培ってきた能力を発揮し、バリューに繋げます。
どのチームの人からも大変丁寧に様々な事を教えていただけるので、もっと頑張ろうという気持ちが強くなります。毎週、同期とスーパーバイザーが集まる進捗報告会でも、同期のバリューに刺激されてもっとやってやるぞという気持ちが強くなりました。
2週間で終わらなかったタスクは次の人へと引き継がれるのですが、引き継ぐ時に困らないように情報を伝えること、なにより引き継ぎ自体を少なくすることが求められました。最初は難しかったのですが、数をこなすうちにだんだんとやり方を身につけることができました。
また進捗報告会の文章もより伝わるように、文章を洗練していく事が求められました。中でも同期のおぎどーは非常に文章力が高く、わかりやすい文章を書くので、どうしたらそうできるのかなどを聞いたりして自分に取り入れていこうとしました。
全てのサービスを回ってみると、それぞれのカラーがチームにもコードにも現れていて非常に刺激的な日々でした。 うまくいかない日もあり、モチベーションを保つためにどうするかと考える日々もありましたが、諦めずに取り組むことで見えるものがたくさんありました。
技術力だけでなく、チームの人との関係づくりなど社会人としての基本を実務で身につけることができたと思います。
まとめ
Web、インフラ、モバイルと幅広い技術を学び、かつそれを実務で活かすまでの研修が丁寧に行われ、研修を受ける前と後ではできることの幅が広がっている事を感じました。それぞれの研修で完全なプロフェッショナルになれるわけではありませんが、各分野を実際に体感することによって、今までできないと思っていたことができるようになったり、その分野のエンジニアの仕事を理解する貴重な機会になりました。
また、全ての研修でボスケテ(質問をすること)とふりかえりの文化が根付いていました。どちらも無くてはならない存在で、それらを磨くことで更なる成長をすることができたと思います。質問をすることで新たな知見を得ることができ、ふりかえりをすることで見えなかった部分にスポットライトが当たり、自分の一面を見直すきっかけになりました。
一つ一つの成長は小さなものかもしれませんが、確実に自信になりました。
研修のスーパーバイザーとして僕らを支えてくれたじょーくん、すずぴーさん、おっくん、そして研修に関わっていただいた全ての人たち本当にありがとうございました。来年もより一層頑張っていきます。
この記事を読んでペパボの研修いいなって少しでも思っていただけたらなと思います。先日公開された新卒サイトもぜひご覧になっていただき、エントリーしていただけたらと思います!
最後まで読んでいただきありがとうございました。 それでは皆様良いお年を! ………