Category: エンジニア

エンジニアに必要なスキルってなに?

システムエンジニアに必要なスキルってなんだと思いますか?

巷でよく言われるのは論理的思考力などですが、私がまず考えるのが「業務知識」と「技術力」、「コミュニケーション能力」です。

業務知識

自社での同じ開発が続くなどでない限り、システムエンジニアは多くのプロジェクト、現場があります。それらのプロジェクトでは、要件や条件などが全く異なります。

客先での業務は多岐にわたり、その業界ごとにルールや仕事のフローが必ず異なっています。システムエンジニアとしては、実際の開発に入る前にそれらの業務知識を知識として理解しておくことは必須で、各案件ごとに頭を切り替えていく必要があります。

とはいえ、その業界の深い知識をすべて知る必要はありません。


そんなことまでしていたら、時間がいくらあっても足りませんからね。

そこまでの知識はいりませんが、システムの開発に必要な表面的な理解は必要です。ある程度、業界のことを知っておくことでお客さまとの信頼関係もでき、良い設計ができるようになります。

技術力

最近では、プログラムができないSEなんてのも多くいるみたいですが、プログラムはできなくともコンピュータやネットワークに関する知識、設計に関する知識がないとシステムをつくる基本的なものはつくれません。

プログラムはできた方がいいのですが、プログラム言語も過去のものはつかわなくなる上に、新しい効率的なものもすぐにでてくるので、基本的な概念さえわかっていればそれで事足りてしまうというのもあります。

知識として、どのような言語があってどういう特徴があるのかは抑えておいた方がいいでしょう。

コミュニケーション能力

実は、これが一番大切なのではないかとも思いますが、お客さんの要件を聞き出す、それをメンバーに伝えるといったコミュニケーション能力がないと技術力や業務知識など全く意味がなくなっしまからです。

まずは、「クライアントが何を望んでいるのか」をきちんとヒアリングし、理解をしないと始まりません。これが不正確だと、「思っていたものと違う!」というクレームにつながってしまいます。

その他の能力

他に求められる能力としては、統率力が必要な場合もあります。SEがかならずしもプロジェクトのリーダーになるわけではありませんが、兼務する場合はメンバーを統率して引っ張っていかなくてはなりません。

そのため、現場をコントロールする能力が必要です。スケジュールが遅れている、仕様が変更になったなど、プロジェクトがスムーズにいくことはほとんどありません。しかし、SEの統率力で「みんなで頑張ろう!」になるのか、「なんだよ!」とバラバラになるのかが変わってきます。

SEは、メンバー全員の個性や能力、性格なども把握しておき、業務の振り分けや管理をしていきます。そして、メンバーから信頼されることでプロジェクトを成功に導くための手助けが必要なのです。

やまけん