maximum80の日記

「Empowering Engineers!! 世界中を楽しく働くエンジニアで満たす」を実現するための事業を展開しています。

プログラミング入門方法がありふれていくご時世に、 エンジニア・組織の”質”の課題に立ち向かいたい。 - 新サービスに込めた想い

新田です。 本日、無事にcodecheck改めtrack(トラック)をリリースすることができました。

f:id:maximum80:20180327133217p:plain

リリースしたタイミングですので、改めて僕達がこの業界に対して、 プロダクトや事業を通じてどういったポジションでどのようなインパクトを与えていきたいかについて、 まとめたいと思います。

社内メンバー向けに展開したテキストですが、所信表明としてこのブログでもそのまま掲載しようとおもいます。 (表現が内部向けになっており、書き殴りですが悪しからず)

trackに込めた想い

エンジニアが間違いなく社会の未来を変える

f:id:maximum80:20180326080934p:plain

(※引用: 世界企業時価総額ランキング2017年と日本バブル期の1989年の比較表)

今から28年前の1989年、バブル全盛期での世界の時価総額ランキングを見てみると、多くの日本企業がその上位を独占、世界経済を牽引してきました。 今日(2017年)の世界の時価総額ランキングをみてみると、TOP10のうちの半数以上の会社は28年前にはなかった新興のIT企業です。 その多くの企業は、エンジニアの創業者が、自らアイディアを形に変え、インターネットを通じて世界中に価値を広げたイノベーターたちでした。しかし今日の日本国内では、そのような新興企業は出現していません。

ここから28年後の2045年、世界は「シンギュラリティ」と呼ばれる時代を迎えます。モノとインターネットがシームレスに接続されるIoTの世界で、我々の生活には常にITが存在しているでしょう。 更にロボティクスやAIが進化し、人の仕事の殆どはロボットに任せる時代になるかもしれません。

もはやIT業界という言葉は死語と化し、我々の生活の一分になる中で、一体どのような人が世界の経済を席巻していくのでしょうか。我々は、それは間違いなく創造力をもったエンジニアであると信じています。

広がる国内の慢性的エンジニア不足

f:id:maximum80:20180326081227p:plain

(※引用: IT人材の最新動向と将来推計に関する調査結果(経済産業省))

しかし、国内では慢性的な「エンジニア不足」が嘆かれています。2015年時点で17万人、2030年には最大80万人のIT人材の不足が予測されているなか、特に前述のIoTビッグデータなど先端IT技術を駆使する人材需要が高まることが予想されています。

初心者向けの裾野を広げる学習環境、「量」への課題解決は広がっていく

そのような背景の中で、「2020年のプログラミング教育の必修化」に向けて様々な取り組みやサービスが増えて来ています。 必修化をすることで、プログラミングにおける概念(プログラミング的思考)に触れることができます。 そしてScratchのようなビジュアルプログラミングで、プログラミングの概念を覚えることができます。

更に、Web上で検索をすると沢山の入門書やはじめてプログラミングを学ぶ上での学習コンテンツに巡り合うことができるでしょう。

しかし社会で必要な学ぶべき技術は多様化・進化をする

しかし、プログラミング言語レベルでも、10年前に平均年収TOP5だった技術は、現在どれもTOP5には入っていません。

f:id:maximum80:20180326080939p:plain

これはこの10年間で、スマートフォンの拡大(iOSAndroid等のプラットフォームの変化)や、様々なOS環境に対応すべき言語、が求められるようになったことが要因として考えられます。

社会で必要とされる技術力は、デバイス等の進化に比例して進化していかなければなりません。

では今から更に10年後、実際にどのようなプログラミング言語や技術力が求められているでしょうか?

「働くエンジニア」として必要な技術とは、技術進化に対応しながらソフトウェア等の製品を構築、改善をしていくことです。何か特定の技術を学んでみて、プロトタイピングをしてみるだけでは、結局のところ社会で必要な技術を身につけたとは言い難い現状です。

そのためには、初心者向けの入門以外に何かしらの教育・評価のメソッドが必要なのではないかと我々は考えています。

「仕事で活躍できる基盤の構築」、即ちエンジニアの”質”の改善をしないと、エンジニアの抜本的な課題は解決しない

エンジニアの人材不足が課題として嘆かれる昨今、初心者向けのプログラミング学習基盤の構築や取り組みによるエンジニアの「量」の改善施策が進んでいます。

一方で、「働くエンジニア」としてものづくりをするための、社内で働きやすい環境の構築や先端技術の活用、人材の育成・評価など、企業側の受け入れ体制や教育・評価基盤などの「質」の改善はいかがでしょうか。

エンジニアのパフォーマンス・生産性は「量」とは比例しません。決して初心者の開発者が会社に10人増えたとしても、開発スピードは一向にあがらないのです。

裾野を広げたとしても、仕事として働くエンジニアがものづくりをできる環境を用意しない限り、「質」への改善を講じない限り、決して「エンジニア不足」は解決しないと考えます。

そのため、我々は「エンジニアが仕事で活躍できる基盤の構築」即ちエンジニアのHR基盤の構築が急務であると考えています。

Empowering Engineers エンジニアの自立自走を支援する

我々は、「Empowering Engineers」というビジョンを掲げています。

エンジニアのHR Techに特化をした採用・育成・評価基盤を構築し、新しい価値を生み出すことができる土壌を構築することで、「自立自走エンジニアを世の中に輩出する」ことを目指していきます。

エンジニアの「質」の改善に必要なのは"オンボーディング(自立支援)"

自分自身が憧れる理想のエンジニア像を思い描いてください。 彼らの共通点は一体何でしょうか。

我々は、プロフェッショナルのエンジニアとは「自立自走できる」エンジニアなのではないかと考えます。

具体的には、技術の進化に応じた必要な技術を、誰かに教わるまでもなく、「自ら学び身に着け」実践をしている。

更に技術進化の中で新しきを学び、ものづくりをすることそのものを「楽しんでいる」人なのではないかと考えます。

このような人々は、決してこちらからの学習環境を提供するわけでもなく、誰かから評価をされるわけでもなく、自分自身で自分の市場価値を見極め、必要なものを必要な方法で身につけていきます。

自立に必要な「学びの動機形成」と「スキルの把握」

自立自走するためには何を学べばよいのでしょうか。 我々は何か特定の言語や入門を学ぶのは一つの手段であると考えています。

重要なことはよりメタな領域です。「プログラムを書いて、自分が思ったようにシステムを動かす楽しさ」を体感することや「今まで自分ができなかったことを出来るようになる」という動機形成を得られることと、自分自身がプロフェッショナルになる上で必要な技術を適切に見極めることことができることではないかと考えています。

我々は自社のプロダクトや事業を通じてこれらの動機形成とスキルの把握の支援することで、エンジニア個人や組織の自立自走できる環境構築を促進します。


codecheck / CODEPREP から "track" へ

f:id:maximum80:20180326081508p:plain

これまで我々はプログラミング試験サービスcodecheck(コードチェック)、プログラミング学習サービスCODEPREP(コードプレップ)をそれぞれ提供してきましたが、この度、codecheckを完全リニューアルし、新プラットフォーム、track(トラック)として生まれ変わりました。

(※CODEPREPは現在も稼働中ですが、学習機能はサービス統合を予定しています。)

trackに込めた想い・サービスの目指す方向性

track(トラック)という名前には、様々な意味が込められています。

まず一つ目にtrackには 「足跡・軌跡」 という意味が込められています。自分自身のエンジニアとしての成長の軌跡や、自分が目標とするエンジニアが辿っていった軌跡、目標を知ることができる、そんな環境を提供したいと考えています。

更に、trackにはデータなどの ラッキング(計測) という意味合いが込められています。自分自身が何をどこまで習得し、扱うことができるようになったのか、組織の中で比較をしたり、業界全体と比較をしたりすることで「現状把握」をすることができます。

そして最後に、trackには音楽の 楽曲学習コース といったような意味合いも込められています。エンジニアとして必要とされる技術やコンテンツは可変的で多種多様です。様々なジャンルで進化を続ける正に音楽の楽曲のようなものです。trackでは、多様なコンテンツをどのプラットフォームよりも柔軟に、且つ試験や学習といった利用シチュエーションに合わせた最適なUXでコンテンツを提供をすることができます。

進化した機能

具体的に、リニューアルしたtrackではこれまでのサービスではご利用いただけなかった エンジニアのタレントマネジメントに最適な機能をご活用いただくことが可能です。

1. スクリーニング→研修→入社後アセスメントまで

これまで、「採用時」における「スクリーニング」試験としてご利用ただいていたcodecheckは、求職者の「定点」でのスキルの可視化、といって良いでしょう。

しかしtrackでは採用時のスキルチェック以外にも、内定後研修、社内アセスメント等、 エンジニアの入社前から配属時のアセスメントまで、幅広いエンジニアのライフタイムでご活用いただくことが可能です。

また、それぞれの「定点」を線でつなげていくことで、自社のエンジニアの成長の足跡、組織としての成長を可視化することができます。

2. 個人→組織→社会のスキルデータを可視化・比較

これまで提出された解答は、個人ベースでの問題のスコアや回答内容でした。 しかし、新しいtrackでは、個人の結果だけではなく、他の受験者との比較データや、組織全体のデータレポート、更には他社(業界)比較をした上でのデータをレポーティングすることが可能です。 これにより、個々のエンジニアの実践力としての立ち位置や、組織のエンジニア力の可視化につなげることで自社の育成課題などを明確化することに繋がります。

3. 多彩なコンテンツ・UXで学習環境から評価まで

他のサービスと比較してコンテンツも多彩なコンテンツを用意しています。 IT全般における知識問題、プログラミング実装問題だけではなく、Webアプリケーションの実装問題、機械学習やデータサイエンスに関わる問題など、難易度やカテゴリが充実しています。

さらに、出題形式もプログラム実装方式(単一ファイル編集)、プロジェクト編集方式(複数ファイル編集)、穴埋め、選択式など、難易度やカテゴリにあわせて組み合わせることができるようになりました。

また、問題を順序立ててコース化することで演習問題集としてご利用いただいたり、学習や副教材としてなど、コンテンツの利用用途に合わせて出題内容をカスタマイズをすることが可能になりました。

エンジニアという名のアスリートの成長・生涯学習を支援する

プログラムしたコードを実行して動かすことは、英語でRun the code(コードを走らせる)といいます。

また、アジャイル開発用語では、ソフトウェアの一つの開発期間の事をSprint(スプリント)(短距離走)と呼称します。

更には、短い期間でアイデアをプロトタイピングする開発イベントのことを属にHackathonハッカソン)と呼びます。 ハッカソンは、Hack(開発)とMarathon(マラソン)を掛け合わせた言葉です。

このように、エンジニアが何かものづくりをすることは属に「陸上競技」になぞらえることがよくあります。

これは、プロのエンジニアが己の技術を進化させて走り続けることを「アスリート」として賞賛をしているための表現なのかもしれません。

エンジニアとして様々なプログラムを書いて実行すること、技術を常に学び・進化させながら、良いソフトウェアを創り続けることは、正にこの陸上競技場を走り続けることと同義なのではないでしょうか。

我々が提供するtrackとは、エンジニアの生涯学習、技術を磨いて書いたコードを走らせ続けることによって、時代にあったソフトウェアを創造するアスリートの成長を支援するような、エンジニアにとっての陸上競技場のような存在を目指しています。

そうして、自立自走するエンジニア達を応援することで、社会をより豊かにすることを支援します。