下請けという概念を捨てる必要性IT企業の現場でも優秀なエンジニアが集う場合には、プロジェクトチームの中で分業が明確に行われています。発想力豊かなシステムエンジニアによって考案されたシステムの仕様が定められ、その設計や仕様に従ってプログラマーがプログラムを構築するという図式が一般的です。その完成物をまたシステムエンジニアが拾い上げてシステムとして完成させ、テストを行って納品するというのが開発の通常の流れになっています。このような現場では、プログラマーは下請けという概念が広まりやすいのです。プログラミングもできる優秀なエンジニアが上に立ち、その仕事の一部であるプログラミングをプログラマーに任せているという図式と考えられてしまいます。業務としても、プログラマーは仕様に忠実にプログラムを作成することが求められていて、エンジニアが考えていることを具現化することが役割と思い込んでしまうのです。そのままではプログラマーは本当に下請けになってしまい、実力が伴わなくなると職を失うことにつながります。キャリアアップ法として重要なのが、この状況に反抗することです。仕様に忠実にプログラムを構成するのではなく、プログラミングの観点からよりよい設計についてシステムエンジニアにフィードバックしていくのが肝心でしょう。してシステムエンジニアとの議論を繰り返していくと、有能なプログラマーとして認められます。システム設計についての知識も深まり、仕事の幅も広げやすくなるのです。別の観点から仕事の幅を広げるためのヒントになりそうなページを<<プログラマーからのキャリアアップ!!>>でも見つけたので、こちらも参考にどうぞ。