IT企業に就職したいという人は、「IT企業で働く=プログラマーになる」と思っている人も多い。
しかし、IT企業と言っても実は様々な職種や分野がある。
それぞれの職種や分野を理解しておかないと、必要とされる知識も違うので、就職活動や入社後に苦労することにもなりかねない。
そこで、IT企業の主な職種について説明する。今からIT企業に転職したいと考えている方の参考にしてもらいたい。
目次
一般プログラマー系の職種と仕事内容
まずは、IT企業の職種の代表格「PG(プログラマー」と「SE(システムエンジニア)」の違いを押させておこう。
プログラマー(PG)の仕事はもちろん、「プログラム」を作成することだ。ここでいう「プログラム」とはコンピュータシステムで動作する「ソフトウェア」を指すものである。
またシステムエンジニアは「SE」と呼ばれ、クライアントと打ち合わせ、条件交渉などをしてプログラマーに仕様を説明し、システム作成の日程管理をする。では、プログラマーの仕事、システムエンジニアの仕事を詳しく見ていくことにする。
プログラマー(PG)
実際にプログラミング言語を使って、プログラム作成をする一般的なプログラマーの仕事紹介をする。
プログラム作成
プログラマーの仕事のメインとなるものである。プログラムを作成するには、プログラム言語を使いこなす必要がある。システムの内容によって以下のような言語を使い分ける必要がある。
- BASIC:初心者向けの言語である。VB(ビジュアル・ベーシック)などで作成すことが多い。
- COBOL:事務処理向けの言語で汎用性がある。
- C言語:ハードの制御までこなす、能力の高い言語だ。派生言語の「C++」や「C#」などもある。
- JAVA:OSなどのプラットフォームに関わらず動作する。携帯などのアプリの開発もできる。
上記以外にも多くの言語があるが、仕事でどの言語を使うのかは、開発システム次第というとろだ。C言語系が使えれば、Javaにも近いので、仕事の幅が広がる。
アルゴリズム作成
システムエンジニアが作成した仕様書を元に、プログラムを作成するわけだが、その前に「フローチャート」という設計図を作成する
その後、実際に「コーディング」と言って、プログラムを書いていくわけだ。仕様書の内容を具体的な手順を使って実現するための考え方を「アルゴリズム」と言う。
データの並べ替えや、検索の手順など、すでに蓄積されたものがある場合は、部品化されているものを使うこともできるが、システムによっては、新たなアルゴリズムを作る必要がある。
プログラミング言語を覚える事と共に、この「アルゴリズム」を考える能力がプログラマーに求められる。
テスト作業及び、デバッグ作業
プログラムが一通りできたら、正常に動作するかのテストをする。
この時、動作不良を起こしたり、期待した結果が得られないことがある。いわゆる「バグ」というものだ。このバク取り作業のことを「デバッグ」と言う。
仕様書自体に問題がある「仕様バグ」や、もちろんプログラム本体にミスがある場合がある。
場合によっては、コーディング作業より、デバッグ作業の方が時間がかかることもあり、忍耐力が試される仕事でもある。
どこにバグあるのかは「デバッカー」などを使って調べることができる。プログラム単体でテストをした後。システムを結合したテストを実施する。また、実際に運用する前には「運用テスト」を実施する。
最終的な運用テストの段階になってもバグが出る場合があるので、最後まで気が抜けないところだ。
未経験者からプログラマーを目指すには
未経験者がプログラマーに転職する場合は、「求人紹介をしてくれるプログラミングスクール」を利用するのが一番の近道だろう。
「転職支援付き、無料プログラミングスクールの徹底比較【転職プロが解説】」の記事では、未経験者におススメのプログラミングスクールを詳しく紹介している。
転職支援付き、無料プログラミングスクールの徹底比較【転職プロが解説】
無料プログラミングスクールは「無料でITエンジニアに必要な知識が学べる」「仕事の紹介もしてくれる」という、未経験者からプログラマーを目指す人にとって、有難いサービスである。 しかし、無料となると逆に「 ...
続きを見る
システムエンジニア(SE)
クライアントとの交渉から、システム仕様・設計を担当する、システムエンジニア(SE)の紹介をしていく。
システム設計
まず、クライアントの希望から、システムを正確に仕様書に起こす能力が要求される。
システム設計をするには、ある程度のプログラマーの経験が必要であり、また商社、銀行、不動産など色々な業種のシステムに対応するために、業種毎の業務の知識も勉強しなくてはならない。
クライアントやプログラマーとのコミュニケーション
クライアントの意向を正しく汲んで、クライアントが納得のいくシステム開発が要求される。
また、プログラマーにも正しく仕様を伝えて、正確なプログラム作成ができるように支援する能力も必要だ。
クライアントとプログラマーの間に立って、十分にコミュニケーションを取りながら仕事を進めていく必要がある。
チームリーダーとしての仕事
システムエンジニアは、システム開発のチームリーダーとしての役割がある。
通常ソフトウェアハウスは、プロジェクトリーダーのシステムエンジニアを先頭にして、数名のプログラマーでチームを構成している。
発プロジェクトのリーダーとして、開発日程の管理など、チーム全体をマネジメントしていく。
また、各テストには必ず立ち会い、問題がないかどうか把握しておく必要もある。
まとめ
プログラマーを数年経験した後に、システムエンジニアに移行する人は多い。システムエンジニアとして仕事をする場合は、プログラマー時代に経験したことが大切になってくる。
特にコミュニケーション力が大切で、円滑にコミュニケーション出来ないと、システム開発にも影響する。
チームで作業しているので、デバッグ作業も分担して行うことある。
システム開発の現場は日々進化しているので、プログラマーであれ、システムエンジニアであれ、常に新しい言語や技術に対応できる能力も問われるところである。
プログラマーとシステムエンジニアの違いについては、「プログラマー(PG)とシステムエンジニア(SE)の違い」の記事で詳しく紹介している。
プログラマー(PG)とシステムエンジニア(SE)の違い
IT業界で働く仕事の中に、プログラマー(PG)とシステムエンジニア(SE)がある。 どちらもコンピュータシステムを構築する仕事であるが、その違いがイメージ出来ない方が多いようだ。 簡単に説明すると、シ ...
続きを見る
Web系の職種と仕事内容
IT企業に勤める仕事の中でも、Web(インターネット)系の仕事に携わる職種を説明する。
インターネットを検索すれば、今やあらゆる情報が手に入る時代である。企業、個人あるいは、様々な情報サイト…。
個人サイトを除いて、ほぼWebサイト作成に関わっているのが、WebプログラマーやWebデザイナーである。それだけ需要が多いのに関わらず、技術者不足とも言われている世界でもある。
しかし、Webで使うHTMLやCSSという言語は一般的なプログラミング言語よりも理解し易い面もある。その辺も掘り下げながら仕事紹介をしていく。
Webプログラマー
Webプログラマーとは、Webサイト構築専門のプログラマーのことだが、実際にどんな仕事をしているのか?必要な知識・技術、その役割や作業内容などを紹介していく。
Webプログラミングとは?
メールフォームやネットショッピングサイト利用など、インターネット上のやり取りは、クライアント(ユーザーのコンピュータ)とサーバー(データベースやショッピングサイト)との連携システムの構築が不可欠となる。
スムーズなデータ更新、連携構築がWebプログラマーの主な仕事となる。プログラム作成には以下のようなプログラミング言語の習得が必要になる。
- HTML:Webページ作成ための言語。慣れれば比較的容易に理解できる。
- CSS:ページ全体のデザインを統一するための言語。必ずHTMLと組み合わせて使う。
- PHP:メールフォームなどWeb上で動作するプログラムを作成するために使う言語。
- JavaScript:直接HTMLに埋め込む形で使う簡易言語。いわゆる「Java言語」と全く別物である。
- Perl:PHPと同じCGI作成向けの言語である。近年は扱い易さの面から、PHPに取って代わられている傾向にある。
上記のような複数の言語を使いこなす知識と技術が必要となるが、Perlを除き、一般的なプログラミング言語よりは容易なものが多いのが特長で、独学で習得することも可能である。
HTML/CSSはもちろんだが、Web連携にはPHPや、JavaScriptの習得が欠かせないところだ。
プログラマーと言っても、サイト全体の把握は必要である。システムエンジニアやWebデザイナーなどとコミュニケーションを取りながら、仕事を進めていく必要がある。
未経験者がWebプログラマーを目指すためのステップは、「未経験者がwebプログラマーになる方法【PG転職プロが解説】」の記事で詳しく紹介している。
未経験者がwebプログラマーになる方法【PG転職プロが解説】
web系のプログラマーは、プログラマーの中でも未経験者が比較的転職しやすい職種だ。 webは今後も発展していくことは間違いない。今プログラマーに転職を考えるなら、webプログラマーはオススメである。 ...
続きを見る
Webデザイナー
Webサイト全体のデザインに関わるWebデザイナーの仕事を紹介する。
Webサイトのデザイン
Webサイトの個々のページ内容から、全体のイメージをデザインしていく必要がある。
色使いから、アクセスし易さなどを総合的に判断するデザイン能力が問われる。
クライアントの希望に沿ったデザインが出来るかが、まずWebデザイナーとしてのセンスが問われるところだ。デザイナーとして様々なサイトを研究しておくことが不可欠である。
Webページ作成
Webページ作成ソフトを使いながら、実際のページ作成に入っていく。Adobe社の「Dreamweaver」が定番ソフトになるが、その場合でもHTML/CSSの知識が欠かせない。
ソフトを使う場合でも、直接タグ編集しなければならない場合があるからだ。前提知識を理解した上での、ソフト使用は忘れてはならないところだ。
動画・画像バーツ作成
ページ作成よりも、ある意味大変なのが、イメージ動画や画像バーツの作成である。写真加工やロゴ、バナー作成まで多岐にわたる。
ここでも「Photoshop」や「Illustrator」などの画像加工ソフトの知識と技術が必要となる。このようなWebコンテンツ作成ソフトは、使いこなせるようになるのに時間がかかるものも多い。HTML/CSSと同じく、事前にしっかりとした学習が必要だ。
また、動画やアニメなどのコンテンツを作成までWebデザイナーですることある。サイト構築に必要なことであれば、デザイナー側で網羅していくことができれば、仕事の幅が広がる。
Webディレクター
Webサイト構築の総指揮を取る仕事になる。クライアントとの交渉・打ち合わせから、デザインやプログラムなど一通り経験を積まないとなれない職種でもある。
ディレクション専門として、複数のサイト構築を同時にこなすとなると、相当のスキルが要求される。様々な業界の知識やコミュニケーション力など経験が要求される仕事である。
まとめ
Webサイト構築をするという意味で、WebプログラマーやWebデザイナーという仕事はあるが、会社の事情や、システムの規模などにより、サイト設計からデザイン、プログラムまで幅広く対応できる力が求められる場合もある。また、直接クライアントとのコミュニケーションしなければならない事もあるかもしれない。
以上のことから、Webサイト全体の状況を把握する力、更には自分で仕事の範囲を決めないで、貪欲に知識や技術を吸収していく姿勢が重要である。
その他の職種と仕事内容
IT関係の仕事に就きたいが、プログラミング系の技術者には向いていないという人もいるだろう。
そんな人にはコンピューターや周辺機器の保守点検や、ソフトの使い方を指導するような仕事もある。
ある意味、裏方の仕事のように感じるが、こういう仕事もないと業界は回らないということだけは言える。
プログラミングだけではないIT関係の職種を紹介する。
カスタマーサポート
一般的にカスタマーサポートといえは、サポート窓口などで、顧客からの電話やメールに対応する仕事がメインとなる。
ハードやソフトの操作の問い合わせや、クレームなどに対応しなければならない。
現場の対応マニュアルに従えば良い場合がほとんどだが、もちろんマニュアルにない場合の対応も要求される。どんな質問にも冷静に対応できる臨機応変さ、また顧客に安心感を与えるようなコミュニケーション力がこの仕事の肝になる。
特にクレーム対応は慎重にするべきで、常に顧客の側に立った対応が求められる。
サービスエンジニア
ハードや周辺機器の修理・保守点検を行うサポートサービスを行う。「カスタマーエンジニア」とも言う。
コンピューター本体以外にも、プリンターやコピー機などのハードの知識や技術が必要になるが、顧客先に出向いての作業になることも多いので、顧客とのコミュニケーションも大切な要素となる。
急なトラブルなどに対応しなければならいこともあり、豊富な知識と経験がものをいう仕事でもある。
普段からの技術的研鑽は欠かせない仕事で、トラブルになり易いケースなど常に頭に入れておく必要がある
インストラクター
主にパソコンの操作を指導する仕事である。
その場合はOSの操作、データのコピーの仕方から、オフィスソフトの使い方などを教える。全くの初心者でも分かるような丁寧な指導力が求められる。
もちろん本人がパソコン操作に精通していることが条件となる。操作中のトラブルなどにも臨機応変に対応できる力が必要なので、それなりに経験も必要である。
マイクロソフト認定トレーナー(MCT)の取得が望ましいが、オフィスソフトの操作指導をするなら、少なくとも MOS WordやMOS Excelなどの認定試験に合格していることが必要である。
もちろん、更に専門的なソフトの操作を教える場合は、高度なソフトの知識が必要となる。
インストラクターの仕事は、一度教えればすむというものではなく、同じことを繰り返し教える丁寧さと、根気よさが必要だ。
受講者の理解度はまちまちで、一度で理解してもらえることの方が難しい。特に受講者が高齢になるほどその傾向が強くなる。
セールスエンジニア
営業職と技術職の両方のスキルを持った職種となる。コミュニケーション力を活かした営業交渉の要素もあり、またハードウエアの知識も必要となる。
元々営業職で技術を身に付けたというケースもあるが、エンジニアが営業も兼ねるというケースも少なくないようだ。
顧客側からすれば、セールスエンジニアに任せておけば、何人もと打ち合わせすることはなく、それだけに顧客との信頼関係が重要な職種といえる。
また、経験値が必要な仕事でもあり、営業やエンジニアの仕事を数年経験した後でないと難しい面もある。
携帯電話会社社員
携帯電話の販売・保守・各種サービスを提供する仕事である。スマートフォンなどの携帯電話はれっきとしたIT機器であり、老若男女問わずユーザーが広がっている。
最近のスマートフォンはいくら感覚的に操作できるとはいえ、電子機器である以上、操作のトラブルや機器の故障は避けられない。
販売すれば終わりではなく、そこからユーザーと繋がるのである。
操作質問から、クレーム、修理など、様々なケースに対応していかなければならない。ユーザーとは直接対面対応することも多く、携帯電話の本体やソフトに精通していることはもちろん、ユーザーとの丁寧なコミュニケーション力が要求される仕事でもある。
まとめ
開発系の仕事は確かにクリエイティブで、一から何かを作り上げるという魅力や、やりがいがある。
しかし、サポートやサービス系の仕事においても顧客を助け、良い方向に導くという大切な仕事である。
“作る”側ではなく、“使う”側の立場に立ったサポートは常に必要とされているサービスである。
開発系でなくてもやりがいのある仕事はたくさんある。自分に合った仕事が必ず見つかるはずである。