CTO

プログラミングスクールへの期待と提案について

CTO

CTOのあんちぽです。このエントリでは、昨今隆盛しているプログラミングスクールに対して期待していることと提案について、エンジニア採用を担当する者として述べたいと思います。

このエントリの前提としての私の考え

まずCTOとして、プログラミング教育全般に対する私(およびペパボとして)の考え方を述べます。我々は「いるだけで成長できる環境」を謳い、エンジニア教育に熱心に取り組んでいる企業であると自負しています(少なくとも相対的には)。また、インターネット産業の担い手として、この業界に多くの方がエンジニアとして活躍の場を見いだせることを心から願っていますし、微力ながら貢献してもいると思っています。

そのような我々ですので、昨今のプログラミングスクールの隆盛について、非常に好ましく思っています。特に私のような世代は、見様見真似で必死にやってきてなんとかいまがあるという感じでプログラマになりましたが、昨今のように教育が体系化され、多くの方に開かれた状況になってきているのは、大いに歓迎すべきことであると思います。

そのため、このエントリは、プログラミングスクールの隆盛に対して批判を浴びせようという意図はまったくありません。むしろ、建設的な提案を述べたいと心底から思って書いているところです。

ペパボがプログラミング教育において取り組んできたこと

ペパボでは、2012年の新卒エンジニア採用開始以来、相当の力を入れて研修を行ってきました。また、当時から現在まで継続して、研修の目的や内容について、さまざまな機会・場所でアウトプットしてきました。その量は多岐にわたるためいちいち挙げることはしませんが、最新のものでいうと、以下のような例があります。

新卒エンジニア研修 2019 Vol.1 - ペパボテックブログ

中途採用向けにも「ペパボカレッジ(ペパカレ)」という研修付きのプログラムを実施し、これまでに10人以上を採用してきました。ペパカレの受講生は、入社するとまず教育担当者のもと、その時々の状況に応じてカスタマイズしたカリキュラムを受講し、いまでは(既に退職した方も含め)各所で活躍しています。以下の@june29のエントリに、我々がペパカレを行うにあたっての思いが記されています。

「自分たちは成長する存在である」と信じること - #june29jp

ここまでは我々がメンバーに対して行ってきた教育について述べてきましたが、社外のスクールとの取り組みも行っています。特に、合同会社フィヨルドさんによる「FJORD BOOT CAMP(フィヨルドブートキャンプ)」には大変お世話になっています。最近のペパカレ受講生や、鹿児島オフィスへ入社したメンバーは、このスクールで研修をしてもらうことにしています。実践的かつ親身な教育スタイルは、我々の考え方ともマッチしており、大変ありがたい存在です。

また、今年は「DAIMYO Engineer College(大名エンジニアカレッジ)」として、実際に我々がプログラミングスクールを開催する取り組みも行いました。@igaiga555 さんに多大なご協力をいただきつつ、ペパボの@udzuraが主導して行った取り組みです。教育にかける我々の思いを、より直接的に実践する機会となりました。

このように様々なしかたでもって、初学者のプログラミング教育に対して、ペパボは活動を行ってきました。

ITエンジニアという職業の状況とプログラミングスクールの意義

経済産業省による調査では、今後10年間でIT人材が10数万から数十万人という規模で不足していくだろうという見通しが述べられています。

IT人材の「不足数」(需要)に関する試算結果

IT人材需給に関する調査(概要) - 経済産業省」p.2より

また、エンジニア採用を日々行っている現場としても、エンジニア採用について積極的に取り組んでおり、是非たくさんの方に仲間になっていただいて、よりよいサービスの提供に取り組んでいきたいという気持ちを強く持っています。調査の面でも、我々の現場感という意味でも、ITエンジニアを志望するということが、職業選択上の選択肢として強い動機づけをもたらすものであるのは、自然なことでしょう。

一方で、そのような需給ギャップを埋めるような社会的な取り組みは、まだまだ十分であるとはいえないのもまた事実でしょう。そのような中で、我々もできる範囲で活動を行ってきたことは前述の通りですが、より専門的かつ専業の教育の仕組みとして、プログラミングスクールが隆盛するのは当然の成り行きですし、社会的にも大きな意義のあるのは明白です。

採用側として課題に感じていること

前述のような社会的状況を反映した結果として、ペパボにおいてもエンジニア募集への応募の中で、他業界からインターネット産業への転職にチャレンジする過程で、プログラミングスクールで学んできたという履歴の方が増えてきているという印象を強く持っています(定量的に計ったわけではありませんが、実際ずいぶん増えていると感じます)。非常に好ましい傾向であると考えているところです。

同時に、選考過程において新たに気づくことも増えてきました。ペパボでは、「わたしたちが大切にしている3つのこと」に謳っている通り、「アウトプット」を非常に重視しています。そのため、応募していただく方にはもれなく、なんらかの形でアウトプットしたものをご提示いただくようお願いしています。その際にお示しいただく内容が、ややもすると画一的なものになってはいまいか?ということを感じる場面も出てきました。

応募者の方々から、プログラミングスクールで学んだという経歴を述べるとともにGitHub上に公開したコードをご提示いただくことが多いです。その内容がおそらくはスクールのカリキュラムを通じて書いたコードであることは、スクールでの学習内容の提示という意味で、当然のことだろうと思います。しかし、多くの場合はRubyやPHPのフレームワークを用いた定型的なアプリケーションのコードのみが示され、なぜそのようなアプリを作ったのかという、モチベーションの部分が見えにくいことが多いように感じています。

現代のインターネットサービスを提供するアプリケーションは、多くの場合、チーム開発によって作られます。そのチームは、エンジニアはもとより、デザイナー、プロダクトオーナー、ビジネス担当者、カスタマーサポートなど、多種多様なロールによって成り立っているチームです。我々もまた、そのようなチーム構成でプロダクト開発を行っていますし、そのような現場は多くあるでしょう。

そうなると、エンジニアとしての狭義の技術的スキルはもちろん必須ですが、それに加えて、仲間になるかもしれない方が、どのようなモチベーションや考え方でプログラミングに取り組んできた方なのかという、人となりも知りたいと思います。モチベーションを知ればこそ、お互いがうまくマッチするかどうかを検討もできますし、そのようにして選考過程が進んでいくことは、募集する側にも応募する側にも、双方にとってよりよいことだろうと思います。

プログラミングスクールの皆様に提案したいこと

未経験の方がインターネット産業においてエンジニアとして身を立てたいと考える動機について、私は多くを知っているわけではありません。様々な動機があり得るでしょうし、先述の通りの需給ギャップのある社会的状況に鑑みて、その道を選択することは、動機はともかくとして、合理的な判断であるともいえると思います。そのような意味における動機について、我々が何事かを問うようなことではないと思います。

ただし、募集への応募に際しては、もう少し踏み込んで取り組んでいただけるとよりよいのではないかと思います。すなわち、上述の課題で述べたような「人となり」を知れるような内容にまでアウトプットが及ぶような支援をしていただけるとよりよいのではないかと考えます(もちろん、そのような取り組みを行っているスクールについても事例について聞き及んでいますし、余計なお世話でしたらお読み捨てください)。

具体的には、課題にひととおり取り組んだ実績としてのコードだけでなく、その取り組みに対して望んだ姿勢、やってみて感じたこと、難しかったところ、工夫したところ、終わってみて得られたこと、今後課題として取り組んでいきたいことなどを自分の言葉で表現できるよう、その人のエンジニアとしての動機づけを、教育カリキュラムに取り入れていくとよいのではないかと思います。

そのような動機づけを行うには(実施しているスクールが多いとは思いますが)カリキュラムの総まとめとして、自分で作ったものについて、上記したような観点から述べるような場、具体的には、成果発表会のような場を用意して、プレゼンテーションを行い、参加者からのフィードバックを得られるような取り組みがあるとよいと思います。その際に作成するであろうスライドについても、成果物としてのコード同様に、その人の「人となり」をうまく述べられているかという観点からレビューを行っていただけるとよいのではないかと思います。

また、細かいことではありますが、GitHubのリポジトリの最も目につくページが、RailsなりLaravelなりのフレームワークによって生成されたデフォルトの内容であるよりは、それがデザインドキュメントであったり、取り組みのモチベーションや工夫点を示すような内容であると、プログラミングへの取り組みについての熟慮を推し量ることがしやすいと思います。そのようなところも含めて、努力によって勝ち得たスキルを、より確かにプレゼンテーションできるような支援があるとよいと思います。

上記に述べた内容は、単に採用側の都合としてより多くの情報がほしいということではもちろんありません。自らやってきたことをふりかえり、将来をよりよく見据える糧とすることが、エンジニアとして成長する効果的な方法であると我々は考えています。その意味でも、単に就職のためというだけでなく、エンジニアとしての長いキャリアをこれから歩まれる方々が、生涯のある時期に一生懸命取り組んだことについて、内省しアウトプットする機会を持つことはよいことであると信じます(社内向けに書いた内容ですが、我々のその面についての考えの詳細は「自薦によってリーダーシップを醸成する組織文化について - ペパボテックブログ」を参照してください)。

プログラミングスクール受講生の皆様へ

このエントリでは、採用側の現場における生の実感を、できるだけ率直に書いてみました。スクールの受講後に皆様が会うことになるだろう人々の中には、上記したような考えでもって皆様の今後を見守っている人々もいるのだと知っていただけると幸いです。もし役立ちそうだとお考えになるなら、是非ご参考ください。皆様の今後の活躍を心より楽しみにしています。

また、個人的にはエンジニア仲間との交流が、自分の成長の大きな糧となったように思っています。通学型のスクールであればプログラミングスクールで目標を同じくする仲間ができるかもしれませんし、オンライン型でも受講者のオンラインコミュニティが用意されているかもしれません。そのような仲間を是非大事にしてほしいと思います。

各所で行われている勉強会を中心とするエンジニアコミュニティにも参加されることを強くおすすめします。このエントリで書いているような、アウトプットの感触についてもつかめるかもしれませんし、プレゼンテーションのレビューにつきあってももらえるかもしれません。この業界の人々は、誠実な人に対しては同様に誠実な対応をする人がとても多いと感じています。私でお役に立てることもあるかもしれません。Twitterの@kentaroまで、お気軽にご連絡ください。

おわりに

このエントリでは、ごく限られた視野しか持たない、いち採用現場で私や採用担当をつとめる同僚らが課題と感じたことについて述べています。よって、プログラミングスクールの皆様にとって、不当な認識がもしかしたらあるかもしれません。しかし、再三述べている通り、プログラミングスクールについては大きな社会的意義があると考えますし、採用側としてはただ感謝すべき存在であると思っています。

その上で、インターネット産業にとってよりよい状況をともに作り出すべく、採用側として感じていることと、それを解決するひとつとなるかもしれない対応策について提案を述べました。このエントリが、エンジニアとして活躍する人々がますます増える一助となれば幸いです。