SEだったりシステムエンジニアとかよく聞いたりするけど、いったいどういう職業なんだろう…。
プログラマーとはまた違うのかな?
上記のお悩みを解決します。
■本記事の内容
本記事で以下の内容をお伝えします。
・システムエンジニアの仕事内容
・エンジニアとプログラマーとの違いは何か
・システムエンジニアになるには
■本記事の信頼性
この記事を書いている私は、プログラミングを仕事として始めて10年以上ほど経ちます。
今も現役のシステムエンジニアです。
あなたの周りにもSEと呼ばれる職業の方がおられるのではないでしょうか?
SEとはシステムエンジニアの略になります。
システムエンジニアと言われて、どういう仕事しているかピンとくる人はなかなか少ない気がします。
仕事でシステムを使っている方はイメージがわくかと思いますが、それ以外の職種の方からするとあまり馴染みがないかと思います。
現役システムエンジニアの私がシステムエンジニアはどういったものか分かりやすく説明していきます。
システムエンジニアを分かりやすく説明
システムエンジニアは略してSEと呼ばれることもあります。
ざっくりとした説明をするとそのままですがシステムを作ってる技術者です。
システムって何?って思われる方も多いかと思いますが、今皆さんが見ているこのWebページもシステムの一種です。
他にもATMだったり、スマホのアプリだったり、仕事でもし勤怠記入を専用のものを使用されている方であればそれもシステムです。
それらシステムを作っている職種になります。
少し具体的に説明すると顧客の要望をヒアリングして、どういったシステムを作るかを考える人がシステムエンジニアです。
その他にもシステムを作るためのスケジュールを管理したり、チームで実施した場合は配下のメンバーの管理したり、リーダー的な要素もあります。
料理に例えると料理長的な存在です。大工で例えると親方みたいな存在になります。
システムエンジニアの仕事内容
システムエンジニアはどういった仕事を行うか詳しく説明していきます。
まず、システムを作ることをシステム開発と呼ぶのですが、そのシステム開発には概ね工程が決まっています。
大まかに書くと以下の流れです。
料理でいうとレシピを考えるみたいなものです。
これが製造です。他にコーディングや実装などと呼ばれたりします。
よく耳にするプログラミングはここで行います。
料理でいう味見みたいなものです。
それが以下です。
左半分が上流工程で右半分が下流工程です。
エンジニアとプログラマーとの違いは何か
プログラミングと聞くとエンジニアだったりプログラマーだったり他の名称を耳にすることがあるかと思います。
各々どういった違いがあるか書いていきます。
まず、エンジニアという言葉ですが、簡単に言うと技術者のことを指しているので全般的な意味合いで使用することが多いです。
実際には、システムエンジニアやネットワークエンジニア、インフラエンジニアなど各々専門とするエンジニアがいます。
これらの人たちを一括りにした感じです。
これらを特定せずにラーメン食べに行こうって会話の中で使ったりするイメージです。
ですが、人によってはエンジニアをシステムエンジニアのことを指した意味合いで話したり、WEBエンジニアのことを指したりしますので、実際は会話の流れなどから読み取りましょう。
そして、次によく出てくるプログラマーですが、こちらに関してはシステムエンジニアとは明確に違います。
先ほどお話したV字モデルの開発工程の下流工程を主に担当するのがプログラマーです。
システムエンジニアが作成した設計書をもとにプログラマーがプログラミングとテストを担当する感じです。
料理で例えると料理長が作ったレシピを料理人がそれ見て作るといったイメージです。
システムエンジニアになるには
システムエンジニアになるためには、まずシステム開発のことやIT関連の知識が必須になってきます。
そうでないと何がシステムでできるか把握してないのに顧客へ提案することができません。システムの設計書を作ることもできません。
料理長が料理の知識がないと成り立たないのと同じです。
とはいえ、他の職業と違いシステムエンジニアになるために資格や免許が必須ではありません。
必要なスキルが身に付き、自他ともに認められればシステムエンジニアとして仕事する機会が増えてきます。
プログラマーを目指す
まず、プログラマーを目指しましょう。
システムがどのように出来上がっていくか実際のV字モデルの開発を行って経験する必要があります。
プログラミング技術を身に着けつつ、IT分野の知識を身に着けましょう。
基本的にシステムエンジニアはプログラマーがキャリアアップした姿になります。
ゲームとかでいうとシステムエンジニアが上級職といったイメージです。
従って、いきなりシステムエンジニアになることは無いです。
プログラマーとして仕事をして、経験を積んだ上でシステムエンジニアになります。
必要になるスキルを身に着ける
システムエンジニアとしての必要なスキルを身に着けましょう。
実際には実務の経験によって、能力が向上していくことがほとんどなのですが、私が思うに以下のスキルは持っておくと円滑に進んでいきます。
論理的思考
システムは感情的には動かないので、論理的に考えて設計し開発を行っていく必要があります。
機能を追加する利点や目的など、もしくはリスクなどを色々考える必要があります。
システム化するということは何かしら困りごとや問題があってそれを解決するために、もしくは容易に実現させるために行うことがほとんどです。
もし特に困りごとなどなく、なんとなくシステム化してもその機能は使わない結果で終わることが多いです。
このように顧客への提案やシステムの設計で論理的思考が必要になってきます。
コミュニケーション能力
システムエンジニアは主に顧客と仕様の調整を行います。
顧客とコミュニケーションを取る必要性がでてきます。
顧客と良い関係を築くためにもコミュニケーション能力は大切です。
信頼を得ることができれば、次の仕事にも繋がってきます。
幅広いIT分野の知識
顧客に提案することが多いので幅広くITの知識を知っておく必要があります。
プログラミング技術だけでなく、ネットワークやサーバのことなどインフラの部分は特に知っておく必要があります。
最後に
システムエンジニアは主に顧客と話しをしたり、システムの設計を主に行う人になります。
もちろん、案件によっては実際にプログラミングまで行う場合もありますが、一般的には上記の形がほとんどです。
簡単に言うと顧客の要望を聞いてどういうシステムを作ればいいか考える人になります。
もし、システムエンジニアを目指す場合はプログラミングの学習を始めて、まずはプログラマーを目指しましょう。
未経験者の場合はプログラミングスクールなども就職もサポートしてくれるものがあります。
独学でも無理ではないですが、検討してみるのも良いかと思います。
コメント