本サイトの運営者は現役のシステムエンジニア(SE)です。これからどんどんIT化が進むため、需要があるシステムエンジニアを目指している人も多いのではないでしょうか。そんな方のために、実際のシステムエンジニアはどんな仕事をするのか、運営者自身のリアルな体験を元に紹介します。
SEの1日
現在私が参画しているプロジェクトのある1日を切り取って紹介します。
SEの仕事内容
私の会社で行っているシステムエンジニアの仕事内容を紹介します。
- 要求分析(何を作るの?)
- 見積(どれくらいでできるの?)
- 設計(どうやって実現するの?)
- 製作(実際にプログラムを作ろう)
- テスト(ちゃんと動くかな?)
- 納品(出来たものを提出)
要求分析
システムを作って欲しい依頼が来たら、まず行うのが「何を作るか」を決める作業です。依頼主の要求(こんなことがしたいという要望)から、システムの仕様(具体的にこのような動きをする)を決めていきます。
見積
要求分析で明確にしたシステムの仕様から、このシステムを作るのに、「どれくらいの費用と期間がかかるか」を見積もります。依頼主に、金額と納期を明確にした見積書を提出し、依頼主との合意を得て契約を結びます。
設計
契約を結んだらシステム開発のスタートです。システムの仕様を「どうやって実現するか」を考えます。どいうった処理を作って、どういった流れで実現するのが良いかを決め、決まったものを設計書に記載します。
製作
設計で作った設計書を元に、実際にプログラミング言語で「プログラムを作る」作業です。基本的には設計書通りに作ります。プログラムが出来たら、設計書通りに作れているかどうかの確認を行います。
テスト
製作で作ったプログラムが、要求分析で明確にしたシステムの仕様通りに「ちゃんと動くか」を確認します。実際に使用する本番の環境にできるだけ近い状態で確認を行います。
納品
契約を結んだ時の納期までに、システムの仕様通りに動くプログラムや資料などの出来あがったものを依頼主に提出します。納品した後に、システムの仕様通りでない不具合(バグ)が見つかった場合は、契約の内容にもよりますが、無償で修正する必要があります。
SEに必要な力
システムエンジニアを経験して、特に必要だと思う力を3つ紹介します。この3つ全てがあればとても良いですが、どれか1つでも自信があればシステムエンジニアとして長く仕事ができるのではないかと思います。
- コミュニケーション力
- マネジメント力
- 技術力
コミュニケーション力
コンピューターと向き合う時間が長いイメージがあるシステムエンジニアですが、コミュニケーション力がとても大事です。プログラムを作るまでの過程で、人と人とのやり取りがとても多いからです。相手の要望をしっかり聞き、自分の考えをきちんと伝えるということが、どの場面においても大事です。最近では文系の学生を採用することが多いのもコミュニケーション力を重要視している表れです。実際に私の会社でも文系で活躍している人が何人もいます。
マネジメント力
システム開発において、プロジェクトが計画通りに進むかどうかはマネジメント力にかかっているといっても過言ではありません。私自身のこれまでの経験でプロジェクトの進みやすさはマネジメント力が大きく影響しています。プロジェクトのトップが、マネジメント力が高い人の場合、プロジェクトがスムーズに進みます。長期的な視点で考え、メンバーからの信頼があるためです。一方で、マネジメント力が低い人の場合、その場しのぎで、メンバーの考えもバラバラになるため、思うようにプロジェクトが進みません。
技術力
システム開発をする上で最低限必要な技術力は当然必要です。その上で、更に技術力があると仕事を進めやすくなります。技術力があれば客先への提案の幅も広がり信頼に繋がります。ツールなどを利用して自動化すれば生産性や品質があがります。気持ちにも時間にも余裕をもって取り組めると、仕事がしやすくなります。
SEの仕事はきつい?
システムエンジニアとして16年経験しました。最初の頃はきつくて辛い時もありましたが、今ではシステムエンジニアになって良かったと思っています。
最初はきつい
最初は慣れない事が多く、納期に間に合わせるために残業もあり、とてもつらかったです。コンピューターやプログラムに関する知識は、理解するのにも苦労しました。分からない事が分からなくて、先輩に相談できないこともありました。ですが、ある時期からだんだん楽しくなってきました。基本的な事が分かると色々なことに応用ができて、効率よく仕事をができるからです。今では余裕ができて、毎月の残業はほとんどありません。
立場によってきつい
私の会社は基本的に依頼主からの直接仕事を受ける一次受けで仕事をしています。一次受けであれば依頼主の声を直接聞く事ができ、コントロールもしやすい立場にあります。ただし、2次受け、3次受けなどの下請けの仕事になるとコントロールがしにくい上、間に仲介する企業からマージンが抜かれ売上も減ってしまいます。どんなに優れたシステムエンジニアでも悪い立場にあると、上手く進める事が難しくなります。
生活に役立つ
システムエンジニアになると自然とコンピューターに強くなり日常生活でも役立つようになります。分からない事は検索する事が当たり前なので、困ったことを検索すればだいたい分かってしましいます。両親や妻からもパソコンやスマートフォンで困った事があれば頼られ、解決できるととても喜んでくれます。これからは小学校でもプログラミング教育が始まります。自分の子どもが学ぶ時にも、教えてあげれるのはとても安心です。プログラミングやコンピューターの知識は色々な事に応用ができます。これから様々な分野で益々IT化が進み、もしも今の会社が無くなっても、しばらくは職に困る事は無いと思います。システムエンジニアになった頃は想像できなかったですが、今ではシステムエンジニアになって本当に良かったと思います。