見出し画像

憧れの職業 プログラマの役割解説

こんにちは。岡山トヨタシステムサービスです。
前回、プログラマとWebデザイナーの違いについて触れましたが、今回はプログラマの仕事について深堀りしていきます。

最後まで読んでいただけると嬉しいです・・・!


▼憧れの職業 ITエンジニア:プログラマ・コーダー・エンジニア、何が違う?

2017年、ソニー生命保険が行った調査では、男子中高生が将来なりたい職業の1位に”ITエンジニア・プログラマ”が選ばれました。IT業界が注目を集め、憧れの職業になったことは喜ばしいことです。

しかし、プログラマは単にコードを書けるだけの人を指すわけではありません。
プログラマの仕事は、コンピューターに何かを行う手順を教える(コードを書く)だけでなく、まるでシェフが料理のレシピを考えるように、その手順自体を考え、設計することも含まれます。そのため、ただコードを打ち込むだけでなく、「何をどういう手順で行うのか」というプログラムの構想を練ることも、プログラマの重要な役割なのです。

一方、コーダー(コーディング作業員)はプログラマと似ている部分もありますが、そのレシピ(設計書)に従って料理を作る料理人のようなものです。設計書に基づいてコードを書きますが、プログラムの構想を練ることは通常ありません。

プログラマ、コーダーどちらも、Web系の開発だけでなく、システムの特性や顧客の要望に応じて、さまざまなプログラミングを行います。そのため、扱うプログラミング言語も多岐にわたります。

エンジニアはさらに上流の工程を担当し、要件定義からシステム設計、テストまでを行います。プログラマやコーダーよりもシステム全体の設計や運用に深く関わる役割です。

「ITエンジニア・プログラマ」という職業が憧れの的となった今だからこそ、気をつけることがあります。
この仕事は、誰でも簡単にできるものではなく、多くの人がその道を目指しながらも、途中で挫折することも少なくありません。ITエンジニア・プログラマになるには相応の努力が求められ、数カ月で簡単に身につけられるものではないことを理解しておくことが大事です。

▼プロ意識とエリート意識の誤解

プログラマは、誰でもなれる職業ではありません。そのため、時には自分のスキルに自信を持ちすぎてしまうプログラマもいます。たとえば、プログラムの実行速度や効率にこだわるあまり、他の人が理解しにくい複雑なコードを書いてしまうことや、自分のスキルを過信し、他人を見下す態度をとることもあります。しかし、プログラミングは一人で完結するものではなく、チームでの協力や他の専門家との連携が不可欠です。コードがいくら技術的に優れていても、他の人が理解できず、保守が難しいものでは、その価値が下がってしまいます。

決して「プログラマはもっと謙虚になるべきだ」と言いたいわけではありません。事実、プログラムを書けるというだけで、その人が特別な存在であることは間違いありません。だからこそ、その能力を活かしコードを書けない人の代わりに社会に貢献することがプログラマの役割でしょう。
これはいわゆる「プロ意識」と言えるものです。

プロ意識を持つ優れたプログラマは、技術力だけでなく、周りとの協調や問題解決のための柔軟な考え方を重視し、プロジェクトを成功に導きます。
ITエンジニアとして成功するためには、技術を学び続ける姿勢挑戦を恐れない心が必要です。簡単な道ではありませんが、失敗を糧にしながら継続的に努力を重ねれば、技術力が身につくだけでなく、チームや社会に大きく貢献することができるでしょう。


▼OTSSの新人研修カリキュラム

OTSSでは、5カ月間にわたる新人研修で、プログラマの登竜門であるJavaEE(企業向けのWebアプリケーション開発)を基礎から実践まで学び、Webアプリケーションを1人で開発できるスキルを身につけることができます。

新人研修カリキュラム

【IT基礎研修】データベース・ネットワーク入門
ITの基礎として、データベースやネットワークの基本を学びます。
この段階で、プログラミングに必要なインフラ知識を身につけ、次のステップへの準備を整えます。

【プログラミング入門】アルゴリズム+Java基礎
プログラミングの基礎として、アルゴリズムとJavaの基本を学びます。
ここでは、プログラミングの土台をしっかりと築き、Javaの基礎的なスキルを習得します。

【システム開発演習】サーバサイドJava
サーバサイドJavaを学び、Webアプリケーションを自力で開発できるスキルを身につけます。
実践的な演習を通じて、システム開発の流れを体験します。

【Java即戦力演習】Spring Bootを使った実践演習
サーバサイドJavaに加え、Spring Bootを使用した即戦力となる演習を行います。
顧客の要求に応じた機能を、決められた期限内で開発する力や、自己管理能力を養います。

【OJT演習】実践的なプログラミング演習
最終ステップでは、チームで開発を行い、OJT形式での実践力とチームワークを強化します。
レビューや単体テストを重視し、顧客が求める品質・コスト・納期(QCD)を守る力を培います。

教材と講師について

このカリキュラムでは、一般書籍に加えて、当社の長年の知見を取り入れた副教材も使用し、体系的な学習を進めていきます。
また、現役プログラマであり、教育講師としての経験も豊富なプロフェッショナルたちが指導にあたります。
そのため、現場で必要とされる知識を効率的に学ぶことができ、実践力を大幅に向上させることが期待できます。

実践的な演習と最終課題

プログラマとしての実装力を高めるために、アルゴリズム論と実践的な演習を組み合わせ、実装に必要なロジックを多角的に学びます。最終課題では、受講者が1人でWebアプリケーションを作成し、その成果を発表します。
さらに、IT人材のプログラミングスキルを可視化する「アルゴリズム実技検定(PAST)」を受験し、習得度を確認します。毎年、新入社員のほとんどが合格ラインのエントリーレベルに達しています。

このように、OTSSの新人研修では、情報系出身の方はもちろんプログラミング未経験の方でも、ITの基礎から実践までのスキルをしっかりと身につけ着実に成長していくことができるのです!


さて、今回はプログラマについて説明をしました。OTSSでもお客様の業務改善に貢献する「プロ意識」をもったプログラマが多く活躍しています。
今回の記事を読んで、将来プログラマを目指す方やOTSSのプログラマとして働きたいと思ってくれる方がさらに増えることを願います。

最後まで読んでいただき、ありがとうございます。
また次の記事でお会いしましょう。
(よければスキ、フォローをお願いします・・・!)


この記事が気に入ったらサポートをしてみませんか?