こんにちは、新卒エンジニアのmyonsawaです。 今回は新卒研修の1つとして行われているプログラミング研修についてご紹介します。
プログラミング研修とは?
新卒研修というと、先輩社員が講師として業務のイロハを教える姿を思い浮かべる方も多いかもしれません。もちろん、そういったビジネスマナー等の研修も行いますが、ピクシブではより実戦に近い形でプロダクトの制作経験ができる研修を行っています。それが、「プログラミング研修」です。
「プログラミング研修」は、新卒技術職が新卒ビジネス職にプログラミングを教える、という少し変わった研修です。モノづくりをしているピクシブにとっては、ビジネス職側にもコンソールやプログラムに臆せず触れていくことも時には求められます。
例えば、実際の話でいうと、ビジネス職でも簡単な文言変更などは自ら修正してプルリクエストを送ったりしています。また逆に技術職においても、プロダクトに対する情熱をもって積極的に議論に加わることが日常的に行われています。
このように互いの専門領域を理解し、尊敬し合う文化を助けるための仕組みとして設けられたのが、この研修です。
このプログラミング研修は新卒のみで行われる唯一の研修であることからも、技術職とビジネス職が分け隔てなく交流し、新卒同期としての一体感が高まるきっかけにもなっています。
準備
今回のプログラミング研修では、「4日間の期間で新卒ビジネス職6名にプログラミングを教える」という大枠だけが総勢10名の新卒エンジニアに与えられており、1ヶ月かけて研修を作り上げていきました。
スケジューリングや講義資料の作成はもちろんのこと、今回はまずビジネス職のニーズ調査から始めました。ビジネス職の先輩方にヒアリングをして回り、配属後に必要になった技術や知見をまとめました。
調査の結果、
・Webサイトの文言修正に必要なHTML/CSS
・修正を反映させるためのGitやシェルコマンド
・データ分析のためのSQL
などの技術要素を重宝したとのことで、それらの要素に加え、プロダクトをつくる喜びを味わってもらえるような題材として、話題のMastodonのミニチュア版(Mastodonクローン)をつくることに決定しました。
そこで決めた段取りとしては
【1日目】【2日目】
- 導入、Mastodonクローンの完成イメージを見せる
- Webサービスを構成する技術要素の概観
- シェル、Git演習
- HTML/CSS演習
【3日目】
- プログラミングアルゴリズム演習(PHP)
- データベース演習(MySQL)
- 実践Webプログラミング演習(PHP + MySQL)
【4日目】
- Mastodonクローン開発(終日実習)
- セキュリティ対策講義
- Mastodon機能拡張あるいは自由課題(終日実習)
とし、日程の後半は、進み具合や受講者のモチベーションを見ながら、柔軟に進めていくことにしました。 こうしてみんなでワイワイ作り上げていく様は、小規模ながらもまさに「研修」というプロダクトづくりそのものでした。
研修当日
前半:集中講義
前半2日間は講義中心に行いました。座学が多いとどうしても集中が続けるのが難しくなるので、受講者にはたびたび小さな課題を出して、エディタでコードを書いてもらったり、実際にシェルを操作してもらったりすることで、小さな成功体験を積み重ねてモチベーションを高めていくことを意識して進めました。特にPHPの実習でSlackに通知を飛ばすbotを作る課題は好評で、日常のちょっとした工夫をエンジニアリングの力で解決することの面白さを実感してもらえたようです。
後半:Mastodonクローン開発と自由課題
ひととおりの技術要素について学んだあとは、いよいよMastodonクローンの開発です。前半の講義では全員一緒に課題を進めましたが、ここからは個々人での研修になります。
研修中に、ビジネス職が頑張って作り上げたMastodonクローンに、技術職がクロスサイトスクリプティング(XSS)攻撃を仕掛けてみたりして、セキュリティや脆弱性対策の大切さを直に体感できる機会も設けました。
3日目の時点でMastodonとしての最低限の機能を概ね実装できたので、4日目最終日はMastodonの機能強化を進めるほか、個人で何か作りたいサービスに取り組むという形で進めました。
MastodonクローンはPHPを使って開発していたのですが、あえてRuby on Railsを使ったブログづくりに挑戦した人もいれば、社員名を入力すると内線番号を検索してくれるような実用的なツールを作った人、Google Apps Scriptを使ってアクセス解析に取り組んだ人など、たった1日で多様な作品が生み出されました。
得られたもの
ビジネス職からは「自分が書いたプログラムがちゃんと動くと嬉しい!」「エンジニアリングの楽しい瞬間が理解できた」と、プログラミングの素朴な楽しさを体感してもらうことができました。
またビジネス職のみならず、技術職にとっても学びの多い4日間となりました。技術的な内容を初心者に説明することが難しく、わかりやすく相手に伝えることの重要さを再認識するきっかけにもなりました。
特に、短い期間でHTML, CSS, PHP, SQLと様々な言語や概念を一気に詰め込んだため、コードを読む際に「どこからがPHPでどこからがSQLなのか?」といった“言語の境界”を理解してもらうことに苦心しました。
むすび
4日間にわたるプログラミング研修は、ビジネス職・技術職ともに多くの知見と経験を得られ、濃密で有意義な時間になりました。 何より、同期との親睦が深まったことが大きな収穫でした!ビジネス職の吸収の早さには技術職一同驚かされ、「これ以上研修期間を延ばすと我々が失業してしまう!」という危機感を抱いたとか、抱かなかったとか。
18年度新卒採用も行っています!興味ある方は是非ご覧ください!
18年度新卒採用募集要項