プログラマーに必要な業務知識
プログラマーとして働くようになると、その会社が開発するシステムの背景となる業務知識について知る必要が出てきます。プログラマーはこの知識がないと、正しく動作するシステムやソフトウェアを作り上げることができません。では、業務知識とはいったいどのようなものでしょうか?また、業務知識がないとどのような問題が出てくるのでしょうか?
会話や仕様書を理解し、何を作れば良いかを見極めるために必要
お金を管理するようなシステムを作る会社に入社した場合、たとえば、企業の経理や予算の管理システムを主に開発するような企業に採用された場合には、簿記などの知識や給与計算の方法、決算書の読み方、さらには注文書や見積書などの管理などについての知識などが必要になってきます。
またゲームを作るような会社に転職した場合にも、グラフィックプログラミングの知識が必要であったり、3Dソフトの知識や、サーバーのチューニング経験が必要になる場合もあります。
会社によって求められる業務知識は少しずつ違ってくるのですが、プログラムを書いて求められるシステムを作るためには、背景となる知識や経験というものが必要となります。
開発を進めていく際には、社内でSEやプログラマーと打ち合わせをして、どのようなシステムを組んでいくか、どのような仕様にするかといったことが話し合われます。そのときに、業務に関する用語が飛び交いますので、それを理解しないことにはどのようにプログラムを書いていいかがわかりません。
また、システムやソフトウェアを作る場合においては仕様書も作成されます。どのようなシステムを作るか、どんな機能が必要かというようなことが書かれているのですが、これを読みこなすためにも業務知識が欠かせません。
私が以前勤めていた会社は、理科学系の情報システムを開発する会社でした。いろいろなシステムの開発を受託していて、そのうちの一つに検体管理を行うシステムを受注し、開発を担当したことがあるのですが、関係者と話をしていると「検体番号」、「連結不可能なように匿名化する」というような専門用語がたくさん出てきました。
「検体」や「連結不可能」などは日常会話では使われないので、部外者には全く意味不明だと思います。ちなみに検体とは患者から採取した血液や組織などのサンプルのことであり、連結不可能とは個人情報と検体情報が結びつかないようにすることを意味します。
幸い、私は他の業務で似たようなシステムを組んだことがあり、これらの言葉の意味を知っていたので、関係者との打ち合わせに参加しても、どのようなシステムを組むことが求められているかが理解できました。
実際、この会社では理科学系の情報システムの開発を担う人材を新卒や中途のプログラミング未経験者で採用する際は、理系の大学で医療や生物、数学などを専攻した人や、関連する業種で働いていた人を採用していました。この会社は別の業務も行っていましたが、そちらはまた別のバックグラウンドを持つ人材を採用していました。上記のような検体管理システムには理系の専門知識が必要になるかもしれませんが、広い意味で業務に関する知識です。プログラミングができる以上に、業務知識が重要であることがわかるのではないかと思います。
新卒や未経験者は業務知識はなくても良いが、あると強みになる
上のような内容を読むと、これからプログラマーを目指そうという人は「業務知識なんて全くない!」と不安に思ってしまうかもしれませんが、安心してください。
特に新卒やプログラマー未経験者であったり、業種未経験者の場合にはこのような知識や経験はなくて当然です。ほとんどの人がこのような業務知識がゼロの状態で入社していますので安心してもらって大丈夫です。
逆に、もしこのような知識があるのであれば、むしろアピールポイントになります。プログラミングの経験がなくても、採用される可能性が高くなるでしょう。プログラマーが持っていると就職・転職に有利な専門性のページに記載したこととも関連するのですが、大学で学んだことやこれまでの業務で身につけたことが活かせるかどうか、洗い出してみるのも良いと思います。
ただ、業務知識がゼロの状態で転職できるのは、30代前半までと思っておきましょう。年齢を重ねるごとに求められるものは増えていきます。プログラムが書けたとしても、30代後半ではマネジメント職を求められることもあります。業務知識がなければ必要な会話ができず、マネジメントに支障をきたしてしまいます。
業務知識がなくても転職ができるのは若いうちだけですので、プログラマーになりたいと思うのであれば早めの行動が肝心です。プログラマー未経験者の求人探しの始め方のページなどをご参考に少しずつでもいいので転職活動を始めてみてください。
仕事をしながら身につける
業務知識を身につけるのは、やはり仕事をしながら覚えるのが早くて実践的です。特に業務知識がない状態で入社した場合には、仕事を通じて覚えるのが近道です。
逆に業務知識がある場合でも、会社ごとに必要となる知識は少しずつ違っていることが多いです。入社した会社にあわせて知識を活かしていきましょう。
たとえば上記のようにお金を管理するシステムの開発を行うようになった場合を考えてみましょう。お金や会計の知識といっても幅広いです。知識を身につけていたとしても、それが即業務に活かせるかどうかは未知な部分があります。知識があるといってもその会社が必要とする業務知識とずれていては使えません。
もちろん、知識があると勘所が早く理解できますので、会社の業務とずれていたとしてもなるべく早く軌道修正して業務で必要となる知識を身につけられると思います。
もちろん、書籍を読んで関連する知識を身につけることも重要です。会社での業務と書籍の情報を合わせて、ブラッシュアップしていくと良いのではないかと思います。
関連記事
1.プログラマー未経験者の求人探しの始め方
2.未経験でも応募がしやすい求人サービス〜らいくサービス
3.ライバルが少ない穴場の就職サイト
4.新卒でプログラマーへの就職活動をする方法
5.未経験でもなぜ採用されるか?
6.プログラマーの採用面接で面接官が見ている9つのポイント
7.プログラマーが持っていると就職・転職に有利な専門性