プログラミング

上流工程エンジニアにもプログラミングスキルが必要な話

プログラミング

この記事では、上流工程エンジニアのプログラミングスキルの重要性と、スキルアップの方法をご紹介します。

どこかで“SIerはプログラミングスキルが低いね”だったり、“システムの仕組に詳しくないのに設計をしている人がいる”みたいな話を聞いた事無いでしょうか?

要するに、システムの設計を行ったり、コード品質をチェックするレビュアーである上流工程エンジニアは、実はプログラミングのスキルが低いかもしれないという事です。

十分にプログラミングスキルありますよ。という方は問題無いです。

ですが、少しでも「本当にこのままでも大丈夫かな」と不安になった方は是非続きを読んでみて下さい。

そもそも、プログラミングが出来ないのに上流工程エンジニアの仕事が出来るの?

理由として多いのが、次の理由です。

  1. 単純に今までやってこなかったから
  2. プログラミングスキルと上流工程で必要なスキルが別物だった

実はIT業界には、元請け下請けという業務の違いがあります。元請けが受注した業務の設計を行って、実際のプログラミングは下請けの会社に依頼する、そんな構造が成り立っているのです。

元請けには大企業が多いです。

つまり、大企業に入社するとプログラミングスキルより提案や設計のスキルが必要なので、プログラミング経験が浅い人は少なく無いのです。

(少なく無いという言い方をしているのは、もちろんプログラミングスキルの豊富な上流工程エンジニアもちゃんと居ますということを忘れないでほしいからです。)

また、提案や設計など上流工程エンジニアの仕事は、顧客とのやり取りが発生するため、プログラミングスキルよりもコミュニケーション能力が重要視されるなんてこともありました。

そういう理由で、実は上流工程エンジニアでもプログラミング経験が浅い人はたくさんいます。

特にSIerと呼ばれる、システム構築のコンサルティングや設計を行う人は自分でプログラムを書いてシステムを構築するわけではないので、“プログラミング出来ないのに、設計しているの?”なんて思われることもあるのです。

何故プログラミングスキルが必要?

最近では、プログラミング技術の重要性が見直され、上流工程のエンジニアにもプログラミングスキルを始めとする様々なIT技術の知識が必要になってきています。

技術の知識が豊富だと、良い提案が出来るし、良いシステムが構築できます。

そういう人材が重宝される時代になってきているし、企業も知識の豊富な上流工程エンジニアを育てることに力を入れている所が多いです。

その中でも、プログラミングスキルが豊富だと何が嬉しいのか?

一言で言うと、質の高いシステムが構築出来るからです。

質の高いシステムというのは、バグが少なく、レスポンスが早い。そして、度重なる修正に耐えることができるプログラムです。

質の低いシステムを構築してしまうと、一つのシステムを構築するのに無駄な時間がかかってしまいます。

さらにその後、新規機能の追加や修正を行う際には、どこをどう修正すればいいのかを調べるのに時間がかかったり、一か所修正すると別の個所に影響が出てバグが発生してしまうなど、コストが大幅にかかったり、顧客の信用を損ねてしまう恐れがあります。

そこで、上流工程エンジニアに良いプログラムを書くスキルがあると、次のようなことが可能になります。

  • プログラムの中身を意識した質の良い設計書が書ける
  • プログラマが書いたソースコードを正しい知識でチェックして指摘出来る
  • プログラマが実装方法に悩んでいる時の良い相談相手になれる(=実装時間の短縮を計れる)

じゃあどうすればいいの?

先ほども挙げましたが、良いプログラムと呼ばれるシステムで重要なのは次の3点です。

  • バグが少ない
  • レスポンスが早い
  • 改修が容易

これが実現出来ているソースコードのことを変更に強いソースコードと呼ばれています。

そのまんまですね。でもそれが難しいのです。

良いシステムを構築するには、自分が変更に強いソースコードを書けるようになるしかありません。

もしくは、自分で書けなくても、良いソースコードを書くテクニックを知り、自分のチームや開発者に正しく伝えることが重要です。

そこで、まずは良いソースコードを書くテクニックがあるという事を知ってください。

詳しくは、別の記事でご紹介しています。是非、一読、二読して知識を付けましょう。

良いソースコードの書き方紹介!4つのポイントで自身のスキルと周りの評価がアップする方法!この記事では、ソースコードの記述テクニックをご紹介します。 プログラマとして、良いソースコードを記述するのに必須のテクニックです。...
読みやすい綺麗なソースコードを書く5つの掟【初心者必見】この記事では、プログラマとして必須スキルの綺麗なソースコードの書き方をご紹介します。 プログラマーなら知っていて当たり前、でも最初...

まとめ

上流工程エンジニアにも、プログラミングスキルが重要だというお話をご紹介してきました。

いかがだったでしょうか?

心当たりのある人もいるのではないでしょうか?

上流工程エンジニアにもなると、今更プログラミングスキルを学ぶ時間なんて無い。と思われる人もいるかもしれません。

ですが、ここで少しでも興味を持って調べるのと調べないのでは雲泥の差です。

おそらく、100人いたら5人くらいしか”よしやってみよう”と思わないと思います。

そうなると、結局その5人が評価されて、信頼性も上がるのです。

また、ここではあまり深堀しませんでしたが、変更に強いソースコードが重要というお話をこちらの記事で詳しくまとめています。併せて読みましょう。

強い
変更に強いソースコードが重要視される時代この記事では、変更に強いソースコードの重要性をご紹介します。 システム構築の際に、既存のソースコードに修正を加えたとき、思ってもい...

COMMENT

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です