てぃってぃの楽しい副業日記!

ワイと嫁(てぃってぃ)夫婦の、副業、育児、プログラミング、筋トレ、ゲームを日記に残して楽しんでいくブログでっす!!

「プログラミング教育」と「IT企業の仕事」by 現役ITエンジニア

こんにちは、てぃってぃ(嫁)の夫です。

 

2020年度よりプログラミングの教育が必修化されるそうですね。本記事では、教育の内容については、文科省の手引きを参考にしていますが、実際に私は教育現場にいるわけではないので、すみませんが詳しくは知りませんし書けません。ですから本記事では「プログラミングの授業で良い成績を残す方法」等は、説明できません。

 

しかし、現役のITエンジニアとして、「プログラミング」について説明することは出来ます。本記事では「プログラミングって何?」という方向けに、

・プログラミングって何??

・社会ではどのような力が必要なの??

・教育内容は、現場(会社)で役に立つの??

などといった観点について、記事にしてみようと思います。

 

 

f:id:kktt0312:20200126115603j:plain


 

1.プログラミングって何?

1-1. 身近に溢れかえっているプログラム

私達の身の回りにある、ありとあらゆる電子機器、例えば今あなたが使っているスマートフォン、パソコン等もそうですが、これらを制御しているのが「プログラム」であり、「プログラミング」とは、それらを開発する手段だと思ってください。

 

電子機器は、プログラムを読み取り、プログラムの通りに機械を制御します。例えばエアコンは、リモコンで26度と設定されると、出力を26度になるように制御します。もしプログラムが間違えて「設定温度×10倍」を出力するようになっていたら、26度の設定で「260度」を出力しようとします(恐ろしいですね)。そのような意図していない動きは「バグ」「不具合」と呼ばれます。人命に関わるようなプログラムほど、バグが無いようにしっかりと製品化テストがされていて、現場で間違った動きをしないようにできています。

 

1-2.プログラミングってどうやってやるの?

簡単に言うと、以下のような流れになります。

 ① プログラムを設計する(考える)

 ② プログラムを実装する(作る)

 ③ 実装したプログラムを機械に入れる(動かす)

 ④ ①~③を繰り返し、最終的に製品化する

教育必修化で行われる授業は、文科省の資料を見る限り、「プログラミング的思考」 という文言が出てくるため、考える力、おそらく①についての教育が重点的に行われるのだろうと思います。

 

ちなみにIT業界では、①~③を仕事にする人を「SE(システムエンジニア)」と呼び、②③だけする人を「PG(プログラマー)」と呼びます。さらに上流工程の、「どのような物を作るか考える」人が、皆さんご存じの家電メーカ(Panasonic、SHARP、等々)だったりします。

①(設計)の作業は、昔は紙で手描きで作っていたみたいですが、最近ではMicrosoftOfficeのExcelやWordで設計書を作成することが多いです。(要望があれば、現場の設計書風のものをサンプルで書いて参考に載せてもいいですが。)

②(実装)の作業は、ほぼパソコンです。「コンパイラ」と呼ばれるアプリケーションを使用して、テキストでプログラミング言語にて作成した「ソースコード」を、プログラムモジュールと呼ばれる形式に変換します。

 

1-3.「プログラミング的思考」とは?

では、「プログラミング的思考」とは何なのでしょうか。文科省の資料にもたびたび出てきますが、「論理的に物事を考える力」と考えてよさそうです。

・・・で、論理的ってなんだよ、って思いますよね。もっと簡単に言ってしまうと、合理的で、「筋が通っている」と考えてもらっていいです。試しに、次の例題でイメージをつかんでみて下さい。

例題あなたは「ベビーカー」が欲しいです。ベビーカーが売っているお店は、近所に5店あります。最もムダが無く、ベビーカーを買うにはどうしたらいいでしょう?

 

回答例は大きくは2パターンあると思います。

 

回答① 「片っ端から全ての店に行く」

確実な方法ではありますが、かなりムダがありますよね。5店ならまだ何とかなるけど、これがもっと珍しい商品だったりしたら、もうやってられないです。(ちなみにプログラミングの現場では、こういう手法を「ゴリラ」とか読んだりしますw)

点数をつけるなら、0点となります。

 

回答② 「電話で在庫を確認してから行く」

こちらにすると、回答①に対して「売っていない店に行く時間・労力」が省けるので、合理的ですよね。このようなことを「考える力」を「プログラミング的思考」と考えていいと思います。

 

1-4.「プログラミング」は難しい?

まず、 「1-3」で説明した、設計する(考える)難しさと、実装する(作る)難しさを別々に考えないといけません。

 

設計する(考える)とは、どのようにプログラムを作成するのか考える作業になります。料理で言えば、レシピを考えることになります。例えるならば『美味しいサンドイッチを作るにはどうすればいいか?を考える』、これが設計です。それには、サンドイッチ生地の選定から、材料の選定(卵を入れるなら相性のいいケチャップ、マスタードを入れる、など)、料理工程の段取り(卵を焼くのは何分、など)となります。

 

実装する(作る)とは、設計した内容を実現、作り上げる作業になります。料理で言うならば、実際に手足を動かして卵を時間通りに焼いたり、マスタードを適量入れたりする力ですね。

 

おそらく義務教育で求められるのは「設計する(考える)」力でしょうから、国語や数学といった知識的な力よりは、なぞなぞを解いたり、遊びを企画・段取りしたり、チームリーダーとして皆を動かしたりすることのできる、地頭の良さや要領の良さが求められると思います。

 

2.IT業界について

2-1.SE、PGの仕事

「1-2」に記載した通り、大企業のシステム開発を請け負うことも多いため、必然的にたくさんお金が入ることは多いです。なので、業界平均のお給料は良い方だと言われています。

・・・ですが、気を付けて下さい、それは大企業のお客様が多い会社や、自社製品が好調な会社の話です。中にはIT業界の下請けの下請けのさらに下請けの…といった会社も存在します。そういった会社では「実装(作る)」しかすることが出来ず、しかも薄給といった可能性もあります。(興味のある方は「請負」「派遣」で調べてみてください。)

また、仕事の需要ですが、皆さんが今使われているスマートフォンや家電製品などが日に日に進化していっているのは、それらを設計している家電メーカーと、それらを実現するSE・PGの頑張りがあるからこそなのです。これからも電子機器はますます進化していくと思われるので、SE・PGの需要もドンドン高まると思います。

そして、昨日の技術が今日では通用しないぐらい、毎日新しい技術が生まれるような忙しい業界でもあります。常に新しい技術・環境に適応できるように、「プログラミング」とはただの「実現手段」であることを理解しておかねければなりません。

※ という風に、教えておいてほしいな…。例えば今覚えた実装技術は、子どもたちが社会に出る頃にはきっと古いものになっているのです。技術より設計(考え方)を教育するというのは、いいことだと思います。

 

2-2.求められる人材

会社にもよりますが、残念ながら、「テストで高得点を出せる子」が欲しいわけではないです。

いざ現場で仕事をしていると分かるのですが、「設計する(考える)力」、「実装する(つくる)力」は、やる気があれば、だれでも社会に出てからでも、十分に身につけられます。それより圧倒的に大事なのは、以下のような力です。

  1. チームをまとめる力(リーダー力)
  2. 社外、社内と仲良くなる力(コミュニケーション能力)
  3. 厳しいスケジュールでもこなす力(体力、根性)

最近の(仕事面が微妙な)新入社員さんは、「実装する(つくる)力」が最も重要だと思っている人が多いです。おそらくプログラミング=PCと向き合って1人で黙々とおこなう仕事だと思っているのでしょうが、1人で完遂させられる仕事などありません。

そして、そういうIT業界の仕事のイメージを、おそらくプログラミングを教える教育現場の先生方も知らないでしょうから、最初に書いた、「テストで高得点を出せる子」が欲しいわけではない、につながるのです。そのような子より、「生徒会長をやってました!」という人や、「クラブで優勝しました!」といった子の方が、確実に活躍できるのです。

(この業界に限らないことだと思いますけどね。)

2-3.IT業界の良いところ、悪いところ

その他に、私が実際にIT企業に勤めていて感じる「良いところ」「悪いところ」をざっくばらんに書いておきます。個人差あります。

 

○ 良いところ

  • 物を作る、動かすのは面白い
  • 需要が尽きない(増える)
  • わりかし給料はいい
  • 「IT」という響きがかっこいい
  • 日々新しい技術が身につく
  • オフィスが綺麗だったりする
  • 頭を使うのでボケない
  • 物を作る、動かすのは面白い

✕ 悪いところ

  • 身体を使わないため不健康
  • 目を使うため視力が落ちる
  • 性格が悪くなる
  • 大変なプロジェクトは残業・休日出勤だらけ
  • 出世には体育会系要素の方が重要
  • 人付き合いの悪い人、オタク率が高い

 

3.まとめ

現場の意見をリアルに書いてみました。他にも聞きたいことがあれば何でも答えますので、お気軽にお聞きください。少しでも本記事が皆様のお役に立てばと願うばかりです。

 

ご購読、ありがとうございました。