こんにちは、こがたです。
システムエンジニア(SE)はパソコンにはりついてプログラムを開発しているイメージを持っている方が多いです。
実際はプログラミング以外にも多くのことを実践できる魅力的な職業です!
この記事では3年の実務経験からシステムエンジニアとはどういった職業なのか説明します。
これらに当てはまるものがあれば最後まで読んでください!
- プログラミング学習中
- システムエンジニアを目指している
- システムエンジニアって何するの?
- システムエンジニアのツラいことは?
まずはシステムエンジニアの概要を説明します。
どういった職業で何を学ぶことができるのか解説します。
年収についてもお伝えするので参考にしてください。
次に具体的な作業内容を工程ごとに解説します。
なにをやっていくのかイメージしてみてください!
最後に3年の実務経験でツラかったことを紹介します。
どの現場でも起こる可能性があるので心の準備をしておきましょう!
システムエンジニアって?
システムエンジニアはクライアント(お客さん)から何を作ってほしいのかをヒアリングして開発、テスト、提供する職業です。
プログラム書いて開発するだけだと思ってた〜
本当に全部やるんだね!
このようにプログラミングだけでなく、クライアントとのやり取りでビジネスを学ぶことができるのが魅力的です。
具体的には以下のスキルを身につけることができます!
- コミュニケーション能力
- ヒアリングスキル
- 設計スキル
- 開発スキル
- システム全体の理解
これらのスキルを身につけていくことで、ITコンサルなどキャリアップも可能になります!
おおよそ平均年収は「400万〜600万円」です。
ちなみに、ぼくは400万円ありませんでした、、、
もうちょっと欲しかったけど、スキルが身についたから満足してるよ!
もちろんツラいこともあったから後で紹介するね〜
システムエンジニアの作業内容(工程順)
クライアントから何を開発するのかヒアリングするところから始まり、開発して提供します。
これから具体的な流れを説明します。
要件定義
クライアントから何を開発してほしいのか確認するフェーズです。
実はこのフェーズがもっとも重要です!
ちゃんとクライアントの要望をヒアリングすることができなければ、最後まで間違った方向で作業を進めてしまいます、、、
(多くの案件では定期的に報告・確認して調整していく)
要件定義がしっかりできていない案件は大変でしたよ、、、
後半は残業続きで必死に終わらせたの懐かしい!
設計
確認した要件をドキュメントにまとめるフェーズです。
設計には大きく2つあります。
- 基本設計
- 詳細設計
まずは「基本設計」でシステム全体を大きく設計します。
「どういったシステムなのか」「どう遷移するのか」「なにができるのか」などを明確にしていきます。
クライアント側も自分たちの望んでいるものが伝わっているのか確認できるので安心ですね!
ここでプロット(HTML,CSSなどで作った静的なもの)をクライアントに見せて確認することもあります。
クライアントに基本設計を確認できたら、次は「詳細設計」に入ります。
システム開発にあたる詳細の設計であり、プログラマーが開発するための設計書になります。
開発を進めていく過程でちょこちょこ修正していく場合もあります!
開発、実装
ここでようやくプログラミングの出番です。
システムエンジニアが開発することもあれば、プログラマーに依頼することもあります。
自分が所属するところではどうなのか確認しましょう!
会社の規模や案件の内容によって変わってきます〜
実装していくだけではなく開発したプログラムコードの管理なども重要になってきます。
ほとんどの案件では「Git」を利用します。
Git?なにそれ?
ソースコードを管理するために利用するものです。
複数人で作業していたら、ごちゃごちゃになりますよね、、、
他の人のコードが欲しくなることもあります。
それを効率的に行えるツールです。
どの案件でも利用するので必ず使えるようになっておきましょう!
Gitの学習は『Udemy』のこれらの講座がオススメです。
Udemyについては『自分に合ったスキルが身につくUdemyを解説|プログラミング講座紹介と感想』をご覧になってください。
テスト
開発したものが正常に動作するのかを確かめるフェーズです。
まずは以下の理由から試験書を作成します。
- 何度やっても同じ試験基準にする
- 何を確認したのかクライアントに見せる
試験書ができたら、あとは手順通りに動かして確認しきます。
システムエンジニアがやるケースもあれば、外注する場合もあります。
(プログラミングスキルがなくても実施できます)
あまり楽しくもないのに時間かかるから嫌いな作業だったなぁ〜
でもクライアントに提供する前にしっかりやっておかないと後で大事になるのですごく重要な作業です!
システムトラブルなどのニュースがよくありますが、このテストで検証しきれていなかったことが原因です!
面倒な作業ですが、気を引き締めて実施する必要があります。
デバッグ
テストで見つけた不具合を改修していきます。
なぜ不具合が起こったのか原因の調査から始まり、修正して再度テストという流れを繰り返していきます。
不具合の原因を見つけることに数分しかかからないこともあれば、何日もかかることもあります。
不具合を見つけることがシステムエンジニア、プログラマーの重要なスキルともいえるので、多く経験して慣れていきましょう!
ツラいこと
リリース直前は準備や試験などで忙しくなるのがほとんどです。
開発のスケジュールが遅れている場合は尚更です。
そうなってくると残業も増えます、炎上案件の場合は徹夜にもなりかねません。
リリース前は21時過ぎまでの残業続きだったなぁ〜
また、原因不明の不具合がでたときは大変です。
原因が見つかればすぐに対応できるのですが、確認しても確認しても原因がわからない場合は心が折れそうになります、、、
確かに不具合の原因がわらからないと焦ってきたりして大変そう、、、
これらはスケジュール、リソース、マネジメントなど管理をしっかりしていれば起こらないことです!
一方、要件定義がしっかりできていないことによるクライアントとのモメ事も大変です、、、
リリース直前になって要望と違うことがわかり、必死に作業して改修していたときはツラかったです、、、
まとめると以下の項目でツラいことがありました。
- 時間:残業
- クライアントとのモメ事
どれも注意していれば起こらないことなので意識しておいてください。
システムエンジニアになるには
システムエンジニアのツラいことを紹介しましたが、その分多くのスキルを身につけられるので是非経験してほしい職業です!
未経験からシステムエンジニアになりたい方は『ProEngineer』がオススメです!
プログラミングの学習はもちろん、以下を学習することができます。
- プログラミング(HTML,CSSJava,PHP)
- DB操作
- 開発の流れ
- フレームワーク
- 設計書の読み方
- 試験書の作り方
約1〜3ヶ月の講座なのですが、なんと全て無料です!!!
え?怪しいなぁ、、、
紹介してる企業から協賛金で運営しているので実施できているサービスになります!
なので安心してください〜
無料体験も行っており、登録すると1,000円分のクオカードももらえるので今のうちに実行してください!
(※2020年11月時点)
状況別に転職方法もまとめているので『【悩みごとの転職方法】悩みや状況にあわせた転職方法|最適な方法をとれば成功する』を参考にしてください。
最後に
システムエンジニアはプログラミングだけでなく、多くのスキルを身につけられる魅力的な職業です!
キャリアアップしていけばITコンサルとして年収をあげることもできます。
逆にいうと、プログラミングなど1つのスキルに特化したものではありません。
自分が目指しているもの、目的としているものから進む方向性を考えてみてください!
最後まで読んでくださり、ありがとうございました!!!
コメント