プログラミングの能力を評価するとは?

 2018.07.10  株式会社システムインテグレータ

皆さんの会社ではプログラミング能力をどのように評価しているでしょうか?あるいは、評価はしていないという会社もあるかもしれません。プログラマがコードを書いて、上長がそれをレビューして、フィードバックする。これだけでプログラマの能力は向上するはずだ、と考えてのことでしょう。

しかし、果たして「コーディング→レビュー→フィードバック」というサイクルを繰り返すだけでプログラマの能力は向上するのでしょうか?答えは「No」です。まず大切なのはプログラマごとの能力を評価して、現状を明確にすることが極めて重要です。そうすることで初めて課題意識が芽生えて、プログラミング能力向上に取り組もうという意欲が湧きます。

今回はそんなプログラミング能力の評価についてお話しましょう。

優秀なプログラマの定義

プログラミングとは文字通り「プログラムを作ること」です。そのプログラムは大規模なシステム構築のための一部だったり、現行で提供しているWebサービスの改善のためだったりします。いずれも共通して言えることは、システム要件を十分に理解した上で最も効率良くデータやリクエストを処理し、適切な機能を提供するプログラムが大切ということです。

このポイントを現実的にするためには良質なプログラムを作る、優秀なプログラマの存在が欠かせません。では優秀なプログラマの定義とは何でしょうか?

博識であること

特定のプログラミング言語を深く理解しているプログラマは優秀と言えます。しかしそれ以上に優秀なのは、それに加えて様々なプログラミング言語やケーススタディへの広い知識があり、問題解決に向けて効率良い道筋を知っている人です。

学ぶことが好き

技術は日進月歩で発展しています。今年流行のトレンドが来年も同じようにはやるとは限りません。むしろ、トレンドは年々変化し、技術は移り変わっていくものです。なので常に学ぶ姿勢が無いと、優秀なプログラマとして活躍し続けることは不可能でしょう。

困難を楽しめる

なぜコンパイラが通らないのか?なぜバグが発生するのか?プログラミングの世界では困難の連続であり、それらを乗り越えていくことで良質なプログラムが生まれます。困難を避けるような行為はプログラムの質を落とします。だからこそ困難を楽しみ、立ち向かっていく気構えが大切です。

ビジネスに興味がある

プログラミングとは結局のところ、ビジネスに混在する様々な課題を解決するために存在しているのです。なので自社のビジネスや顧客のビジネスに興味を持ち、理解することで初めて目的に合った良質なプログラムが生まれます。

柔軟な発想がある

プログラミングは困難の連続だと前述しましたが変化の連続でもあります。様々な要因によって優先順位が変わり、それらに対応する必要があります。そのため優秀なプログラマには常に柔軟な発想があり、どんな変化もポジティブに捉えることが大切です。

チームプレイができる

一般的なイメージとしてプログラマは孤独な存在ですが、実はチームプレイが何よりも大切です。一つのシステムを完成させるには多くの人が関わり、関係者全員がコミュニケーションを取っていくことで円滑にプロジェクトが進みます。チームプレイの精神があるプログラマはプロジェクトの成功に大きく貢献する存在です。

もちろん、これが優秀なプログラマの定義のすべてではありません。会社の方針やその状況によって定義は変化します。しかし会社としては、優秀なプログラマの厳格な基準を設け、プログラミング能力を評価しなければならないシーンが多々あります。そのシーンとは一体どのようなものでしょうか?

新規CTA

意外と多い、プログラミング能力評価のシーン

新卒採用

日本ビジネスの独特な慣習の一つといえば「新卒者一括採用」です。実はこれは欧米諸国から見るとかなり奇異な採用活動に映るようです。というのも、欧米諸国や日本以外のアジアでは基本的に「ジョブ型」という採用活動がされます。これは新卒であっても「能力ありき」で採用するという方式であり、社会経験も能力も無い新卒者を採用する日本ビジネスとは大きく異なります。ちなみに日本ビジネス式の採用活動を「メンバーシップ型」と呼びます。

最近になりこのメンバーシップ型に疑問を持つ会社が多くなり、ジョブ型の新卒採用を進めることが多くなっています。今後は、新卒者であってもプログラミング能力の評価を行い、採用活動を進めていくことが一般化していくでしょう。

中途採用

中途採用に関しては日本ビジネスでもジョブ型を取り入れています。それは当然、会社が中途採用に求めるものは「即戦力」だからです。しかし、プログラマの中途採用ほど難しいものはないでしょう。「あれができる」「これができる」といくら面接時に語ったとしても、入社後実際にそのスキルが発揮されるかどうかは分からないのですから。

だからこそ、スクリーニングとしてプログラミング能力の評価を行って、入社後のミスマッチを防止するための対策が必要です。

人事評価

プログラマの人事評価としてプロジェクトへの貢献度を一つの指標としている会社が多いかと思います。しかし、実際にその人がどれくらいプロジェクトに貢献できているかどうかは判断が難しいところです。もしかすると、部下の功績を自分の功績としている上長が存在するかもしれません。

そこで、人事評価の一環として社内プログラミングコンテスト(社内プロコン)を取り入れると、誰が優秀なのか?を明確に把握し人事評価に反映できます。

社員教育

社員教育の一環として社内プロコンを導入することもおすすめです。単にプログラミングに関する技術を教え込むのではなく、社内プロコンを実施することで社員同士の競争力も芽生え、技術向上へ意欲的になります。

社内プロコンで上位へランクインすることを目標とすれば、自然とプログラミング能力の向上も図れます。

適材適所

社内プロコンを実施すると誰が優秀か?ということだけでなく、誰がどのプログラミング言語に長けているかも把握できます。システム開発の現場ではプロジェクトごとに扱うプログラミング言語も違うので、プロジェクトに応じて適切なプログラマを参画させることが大切です。

いわゆる適材適所を実現するためにもプログラミング能力の評価は欠かせません。

業務委託

システム開発を委託するクライアントの立場になって考えると、その委託先が本当にスキルの高い会社なのかを判断することは難しいでしょう。そこで、プログラミング能力を評価するためのツールがあれば、委託先選定はもっと簡単になるはずです。 [RELATED_POSTS]

プログラミング能力判定サービス「TOPSIC」

今や様々なシーンにおいてプログラミング能力を評価することが求められています。特に中途採用では、ミスマッチを防ぐためにプログラミングテストを実施することは欧米諸国や日本以外のアジアでは当たり前に行われています。

当社システムインテグレータでは、そうしたプログラミング能力の評価をシンプルかつ簡単に行うためのサービス「TOPSIC(Test of Programming Skills for International Coders)」を提供しています。

6段階の難易度で出題される様々な設問に対し、実際にプログラムコードを書いてもらうことでプログラミング能力の評価が行えるというサービスです。中途採用、新卒採用、社内プロコンの実施など様々なシーンでご活用いただけます。

プログラミング能力の評価に課題を感じているのなら、TOPSICの活用をぜひご検討ください。

新規CTA

RECENT POST「最新動向」の最新記事


この記事が気に入ったらいいねしよう!