プログラミングは、主にプログラムを作るプログラマーの作業です。要求のないプログラムを作るということは、ほとんどありません。顧客や会社の業務部門からの要求に従い、その要求を満たすシステムの仕様書が作られ、初めてプログラムを作ることができます。

プログラミングを行うプログラマーは、受け身的な立ち位置にいるエンジニアです。だからと言って決して積極的に動けない、やりがいのない仕事ではありません。
むしろプログラマーには、プログラミングを通して題材となる業務の仕組みや仕事の流れを学ぶ大きなチャンスがあります。例え狭い範囲の要求仕様であっても、その周辺をより広く学びながらプログラムを作ることで、将来役立つ知識を習得できます。

作るプログラムは基本的には発注元の要求ですが、それをより具体化してプログラムのコードに置き換えることができるまでブレークダウンされます。
その段階になったらプログラムを完全に作れるかというと、実はそうではありません。分からないことが必ず出てくるので、それを発注元まで遡って確認する作業も発生します。これを繰り返している内に大元の業務の周辺も知ることができ、知らず知らずの内に当該業務の知識も増えます。

こうしたことをあらかじめ心得ておけば、最初から積極的に学びの機会にすることができ、他のプログラマ―よりも自分の知識やスキルアップにつなげることができるでしょう。この経験は同時に自分のキャリアアップにもつながるため、毎日のプログラミング作業は非常に有用で、疎かにはできなくなります。

このようにプログラマーはプログラミングを通して成長できる魅力的な職種なので、受身的な立場だからといって仕事を疎かにしなければ、その将来性は大きく広がるでしょう。