よく耳にするエンジニアの職種として、システムエンジニアとプログラマーが挙げられます。どちらも同じエンジニア職ですが、仕事内容や担当領域は大きく異なります。
システムエンジニアは、ますクライアントのニーズを把握するためのヒアリングを実施。クライアントの要望を元に具体的に必要な機能・性能をまとめ、それを実現するために必要なメンバーや予算、スケジュールなどを設定します。いわゆる要件定義という工程で、システムエンジニアにとって非常に重要な業務です。要件定義後は、システム全体を設計していきます。
チームを取りまとめ、何か不具合があった際の対処なども行わなければならないため、システムエンジニアとして活躍するには、豊富な経験や高いコミュニケーションスキルが必須です。
システムエンジニアが作成したシステム設計書に従って実際にプログラミングを行うのが、プログラマーの仕事です。テストを繰り返して設計したプログラムが要望通りの動きをするのか確認し、バグがある、またはバグが発生しそうな場合は修正していきます。求められる動作を、いかに不備のない状態で実現できるかが、プログラマーの腕の見せ所です。
一般的には、プログラマーからスタートし、経験を積んだ後にシステムエンジニアへのキャリアアップを目指すのが一般的です。プログラマーからスタートする場合は、プログラミングの基礎知識をまずはしっかりと身につけ、自分に何が必要なのかを知る必要があります。