ITエンジニアはまずプログラミングという考えの誤り

Uncategorized

こんにちは、Workaholicです。

ITエンジニアとして「プログラミング」を覚える事の優先度について、少しもめ事がありましたので今回はこれをテーマにしました。

私の考え方として「ITエンジニアはまずプログラミング」という発想に疑問を持っています。私自身は学生時代からプログラミングを学習しており、SEという仕事をしている以上、仕事の中でもプログラミングを活用する場面はある為、学生時代の経験が活きているなと実感しますし、必要な知識だと認識しています。しかしながら実際の実務を経験すると「何よりもエンジニアはプログラミング」とは思えないのです。

・実際に実務で求められる事

エンジニアと働く上で最初に学習しなければいけない事として「ITというものを全体的に把握する」という事が挙げられます。これはどのようなIT企業であれ初期の社員教育として行われます。当然プログラミングを含みますが、プログラミングに全てを費やすという事はありませんし、そこに重きを置くこともありません。

それは「ITの仕組みやシステムの仕組みを理解していないとプログラミングを覚えたところで全くと言っていいほど無意味だからです。

エンジニアの仕事はプログラミングをする事だけはありません。設計・開発・構築・運用・保守様々と多岐に渡る業務を行う必要性があるわけです。その中でプログラミングの知識を有していればOKな仕事と言うのは逆に多くはないでしょう。仕事の幅が広がれば当然プログラミングの知識がないと出来ない事もありますが、実務で必要な知識の事を缶上げれば、初期教育としてはプログラミングだけに特化するのではなく、IT知識を全体的に把握する必要性があるのです。

・実際に初心者に求められること

実際のエンジニア初心者として覚えておいて欲しい事は以下の項目です。

・システム概要

・システムって何?
・システムは何で使われている?
・システムを構成する要素とは?
・システムを開発する手法とは?


まずこの4点を理解をしておいて欲しいです。いざ実務に入ってからサーバの役割が分からない、今自分がやっているのはシステム開発におけるどの工程か分からない・・・とならないようにしましょう。

・Linux/Unix

Linux/Unixの基礎的なコマンドを覚えておけばOKです。LinuCなどの資格を取得しても良いですが余裕があればで大丈夫です。最初から突然高度な設計や開発を任されることはないかと思いますが、どこで働こうがサーバがある限りLinux/Unixに触れる機会は必ず出てきます。※商用利用ではRedHat系が多いです。

・DB(データベース)

RDBMS(リレーショナルデータベース管理システム)の仕組みと、DBベースの役割が分かっていればOKですSQLの知識が現場に応じて必要になりますが、必要になる前に覚えようとすると結構労力を喰いますので、そういうものがあるという事だけ事前に認識をしておけば良いでしょう。必要と分かった時点で勉強するでも新人の間は間に合うはずです。

・NW(ネットワーク)

OSI参照モデル、規格やプロトコル、ネットワークの形態などが分かっていればOKです。実務では当然分かっている前提で話が進みます。新人の頃は全てを理解することは難しいでしょうが、ただ事前知識がないと全く分からないという状況にも陥る事もありますので、基本情報技術者試験レベルの知識は頭に入れておきましょう。

・プログラミング信仰は誰が言い始めたのか

これは個人的な予想なのですが、SNSや実務を通した体感的に以下のように感じています。

現場から遠い人ほど「プログラミング」と言う
現場に近い人ほど「IT知識を満遍なく」と言う

この現場から遠い人と言うのは、エンジニアをコントロールできる立場ではあるがエンジニアとしての働いたことはない、あるいは経験の浅い人を指します。エンジニアとしてプログラミングを学ぶという発想は間違いではないのですが、エンジニアがすることはプログラミングだけではないという事を分かってない可能性が高いです。

現場に近い人はエンジニアの業務の実状を知っているので、まずはエンジニアの入門としてIT知識を満遍なく学習すべきと理解している人が多いです。プログラミングはその満遍なく学習すべきモノの中に同列にあり、優先されるべきものではないという事を理解しています。

・最後に

そもそもの話になってしまいますが、プログラミングをすれば必然的にLinuxにもDBにもNWにも触れる機会が出てきて、それらの学習を独学でも学んだとしても、体系的に学んでいくはずです。(競技プロなど本当にプログラミングだけに絞ったものは除く)

これを理解せずにプログラミングが出来ない人ほど、エンジニアはプログラミング!それ以外はいらない(分からない)!と異常なプログラミング信仰を見せます。そもそもプログラミングを使って何をするのか、どう使われているのかを理解できてないからこそこのような話が出てくるのかもしれませんね。

本当にエンジニアなると思うのではあれば 、まずは「IT知識を満遍なく」 学ぶことをオススメ致します。

(Visited 249 times, 1 visits today)

コメント

タイトルとURLをコピーしました