朝ドラ「とと姉ちゃん」のタイピストから学ぶ、プログラマー育成方法
皆さま、こんにちは! 転勤族協会TKT48代表/ITコンサルタント/産業カウンセラーの「おくちゃん」こと 奥田美和です。
IT業界に復帰したのも束の間、IT業界から離れて「まちづくり関連業界」にどっぷりはまって2か月。今は「ミサワホームの時短勤務ママ社員と、元不動産業界出身の転勤族の妻・TKT48不動産部メンバーで、転勤族の妻視点の家をつくる!」プロジェクト企画の真っ最中です。
4月・5月と、業務分析 → 要件定義 → タスク分析 → 工程表作成 → メンバー選定と、IT業界でプロジェクトマネージャーをやっていた時と全く変わらない仕事をしています。
■PM目線で見る「とと姉ちゃん」
「その技術水準のあなたに、任せられる仕事はありません」
「タイピストは時間との勝負だって、ご存じないのかしら?」
「タイプではなく、お手伝いから始めてもらいます」
これは、NHKの朝のドラマ「とと姉ちゃん」の職場の女性ボスが、入社したばかりの主人公・とと姉ちゃんに言うセリフです。
タイピストは、最初からタイピストではないように、
プログラマーは、最初からプログラマーではありません。
学校で学んだり、趣味でプログラミングしていた方は別として、大学の文系学部を出てSIやソフトハウスに入社したSEは、最初はプログラミングのプの字もできません。
私も、N88Basicは触ったことがあっても、COBOLのコの字もできませんでした。
だから、大手SIでは新人研修を3か月ほどやり、プログラミングのプの字くらいはできるように育成してから現場に出すのですが、4次請け以降の会社だと何もできない新人を送り込んでくることがあります。
発注側SEとしては「未経験者が来たー!営業&PMさん、なんでー!?」と頭を抱えるのですが、経験が無いだけでやってみればやれるかもしれないので、他のプログラムをコピペすればできる簡易なプログラムの詳細設計書を渡してみます。
――とと姉ちゃんの女性ボスが、とと姉ちゃんに「これをやってみて」と原稿を渡したように。
しかし、プログラマーがタイピストと違うのは、渡された原稿をそのまま入力するのではなく、渡された詳細仕様書に書かれている文字を「頭の中でプログラミング言語に自動変換して」「正しく動くように」プログラミングすること。
コボラー出身者(特に金融系)は、プログラミングする前に「紙に業務フローを書く」→「コーディングシートにCOBOL言語を書く」→「実際にプログラミングする」という流れを教え込まれるので、1年も経てば、頭の中でフローを考えCOBOL言語が浮かぶようになります。
(確か、何回もコンパイルしたりJCLを流すと時間とお金がかかるから、事前に紙の上で確実なものにしてからプログラミングすること!と教わったような気がします。ホスト系は、1回プログラムを実行すると結果が出るまで30分くらいかかる大規模システムも多いので。)
そのコボラー出身の感覚で、新人さんが詳細設計書を一瞥しただけでVisual Studioの画面に向かって1時間固まり、その後ちまちまと入力し、1日終わる頃にはプロパー新人SEの1/10くらいしかプログラミングできていない様子を見ると、「とと姉ちゃん」の職場の女性ボスのようなことも言いたくなるのです。(言わないけど。)
「その技術水準のあなたに、任せられる仕事はありません」
「プログラマーは時間との勝負だって、ご存じないのかしら?」
「プログラミングではなく、テスターから始めてもらいます」
まずは、他の人が作ったプログラムを動かし、詳細設計書からテスト仕様書を書き起こしてもらいながら、「どういう風にプログラミングしたら、自分の思う通りに動くか」感覚を掴んでもらいます。
正直に言って、プログラミングのプの字から教えなければいけないなら、4次請けの会社にお金を払うどころか「人材育成費」を請求してもいいのじゃないかと思うこともしばしばありました。
でも、私自身が4次請け社員だった時に、売上が無いと人材育成費を確保できない内情を目の当たりにしたし、「稼いでこい」と出された派遣先でVB.NETのヴの字ができない状態でも教育してくれたプロパー(正社員)にはとても感謝しています。
だから、教えました。
とことん、業務フローやクラス図を書いて、教えこみました。
とにかく、コボラー時代に鍛えられた「まずは紙に書く!」を徹底させました。
すると、ちゃんと理解した上で詳細設計書を読めるようになるし、流れを理解した上でプログラミングできるようになるから、一発で「正常終了」するようになります。
「とと姉ちゃん」の場合は現場を手伝うところから始まるようですが、業務システム開発の現場でも「システム部ではなく、事業担当課で仕事をした経験」が大いに生きる場合があります。
テスターとは、事業担当課のエンドユーザー視点になってテストを行う、とても重要な仕事。エンドユーザー=テスター視点が無ければ、プログラミングの上のステップ…外部(画面回りの)設計はできません。
プログラマーは、紙の上(頭の中)でプログラミングできるようになったら、一人前。
さらに、エンドユーザー視点を持つことができたら、SEに。
最近はノンプログラミングで、画面の部品をドラッグ&ドロップするだけでシステムを作れてしまうようなので、プログラマーも最初からエンドユーザー視点が必要なのかもしれませんが……。
何はともあれ、スーパータイピストも、スーパープログラマーも、地道な努力の上に成り立つ職業なのだ、ということでした。
■本日のまとめ:2020年から小学校でプログラミング教育が必修化
個人的には、UI(ドラッグ&ドロップで画面作り)から入るのではなく、紙にフローを書くところから教えてあげられたらいいのにな、と思います。