Javaなどのプログラミング言語を用いてソフトウェアを制作する人。
つまりプログラミングする人です。
SEが作った仕様書にしたがって、ソースコードを記述します。
システムの大工さんみたいなものです。
Javaなどのプログラミング言語を用いてソフトウェアを制作する人。
つまりプログラミングする人です。
SEが作った仕様書にしたがって、ソースコードを記述します。
システムの大工さんみたいなものです。
コンピュータシステムの設計や、
システム開発のプロジェクト管理などをする技術者のことです。
顧客のニーズを聞いて、システムを設計します。
また、開発のマネジメントも行います。
システム開発を取り仕切る人です。
「基本からしっかり教える充実した教育制度。」
「プログラミング経験ゼロからのスタートでも大丈夫。」
就活での、こんな言葉に惑わされて、
入社したものの、後悔している人は多いと思います。
確かに大丈夫なんだけど、
本当に本当に苦労することになります。
何も出来ないことへの負い目と、
すらすら課題をこなすプログラミング経験者を横目に、
劣等感ばかりに苛まれる日々。
これは、私の主観ですが、
プログラミングを教える先生は、
決して説明がお上手とは言えない人ばかり。
参考書などを読んでも、チンプンカンプンで、
学習がまったく進まず、
入社当時のやる気も、自信もなくなってしまいがちです。
通常、新入社員は、同じスタートラインになっています。
しかし、PG・SEは違います。
プログラミング経験者が、大きくアドバンテージをとっています。
これが大きなストレスになるのです。
しかし、文系PG・SEであることの弱みは、
プログラミングが分からないことに起因することだけです。
だから、プログラミングができるようになってしまえば、
とりあえずの、ストレスの原因は取り除けます。
それに、これは断言できるのですが、
プログラミング言語は、決して難しくありません。
慣れてしまえば、英語なんかよりはるかに簡単です。
ただ、よい先生と書籍が少なすぎるだけです。
もちろん、1日、2日で、
できるようになるわけではないですが、
ちゃんと、学習すれば3ヶ月もあれば、
ある程度、使いこなすことができるようになりますよ。
なんで、理系の人がプログラミングできるのか?
それは、才能があるのではなくて、
単に、経験があるからだけですよ。
後述しますが、文系であることの方が、
SEになったときに、大きなアドバンテージをもちます。
プログラミングは、本当に慣れるしかありません。
なぜなら、プログラミングは言語だからです。
使わないことには、絶対に身につきません。
ただ英語よりはるかに簡単です。
発音もなければ、複雑な文法事項もありません。
ただ、英語の学習をするのと違うのは、
よい先生や、分かりやすい教材が、ほとんどないことです。
これが致命的なのです。
とりあえず、手を動かしていれば、
誰でもできるようになります。
プログラミング言語をあつかうのに才能はいりません。
理系の人ができるのは、
通常、大学か専門学校で、
プログラミングを経験しているからです。
学校で学べば少なくとも、
半年以上はプログラミングをしていたことになります。
半年やれば、誰だってできるようになります。
まずは、
「プログラミング言語は難しい」
という固定観念を捨ててください。
これが全てです。
記号ばかりでチンプンカンプンなのは、
未経験者であれば、誰でもそうなのです。
ただ時間をかければ誰にでも読める記号なのです。
肝心の勉強方法ですが、
いろいろな書籍に目を通しましたが、
本当に初心者のことを考えて書かれている書籍は、
ほとんど無いのです。
しいてあげるならば、
「これからはじめるプログラミング基礎の基礎
谷尻 かおり (著), 谷尻 豊寿 (監修) 」
こちらは特定の言語について書かれている書籍ではないですが、
プログラミングが何なのかについて、
本当に噛み砕いて説明してある書籍です。
今まで、参考書が難しすぎて、
何も読み通せていない方は、
ぜひ、読んでみてください。
それ以外の本は、
それも似たり寄ったりです。
JAVAやCなどの言語別の書籍を購入する場合には、
問題演習が多いかどうかを基準の1つとして選んでください。
手を動かさなければ、
絶対にプログラミング言語はできるようになりません。
少しでも文系であることの弱みを取り除けるように、
無機質で、つまらないかも知れないですが、
意味を考えながら、コードを書いてみてください。
分かってくると、それなりに楽しくなりますよ。
前述したように、
経験さえ積めば、誰でも、プログラミングはできるようになります。
基本的な、プログラミングであれば、
正直、それほど大きな差はでないです。
差が出るのは上流工程です。
プログラミングは、仕様書に沿ってつくっていけばいいので、
コミュニケーションがなくてもできます。
打ち込むコードが違っても、どれも同じ動きをするシステムが出来ます。
上流工程ではコミュニケーション能力が求められます。
相手のニーズに沿った、
システムを作り上げるには、
コミュニケーションが必須です。
ニーズの汲み取り方で、
システムが全く変わってきます。
一般に理系よりも文系のほうが、
優れたSEになるなんて言われていますが、
コミュニケーションが1つの要因なのでしょう。
今、プログラミングができないことに劣等感を覚える必要はありません。
時間が経てば、誰でもできるようになります。
優秀なSEになるための、修行期間だと思ってください。
プログラミングを知らないSEなんて、
泳げない水泳コーチみたいなものですから。