- システムエンジニアにプログラミングのスキルは必要なのかな?
- プログラミングができなくてもシステムエンジニアになれると聞くけど本当?
- 実際にシステムエンジニアとして働いている人に教えてほしい。
こういった疑問にお答えします。
この記事を書いている私は、システムエンジニアとして9年間働いています。
「プログラミングなんて好きじゃない、プログラミングができなくてもシステムエンジニアになれるって聞くから、別にいいじゃん」
という人もいますが、絶対にプログラミングができたほうが幸せになれます。
幸い、私の場合はプログラミングのスキルを持っているため、幸せな(=残業時間の少ない)生活を送れています。
今回は、システムエンジニアにプログラミングのスキルは必要なのか?について、現役のシステムエンジニアの私がお話しします。
以下の順番で進めていきます。
- 実際にシステムエンジニアがプログラミングをすることはあるのか
- システムエンジニアにプログラミングのスキルは必要なのか
- プログラミング未経験者がシステムエンジニアになるためには
実際にシステムエンジニアがプログラミングをすることはあるのか
結論から言うと、システムエンジニア自身がプログラミングをすることは、ほとんどないと言えます。ただ、小規模のプロジェクトだと自分でプログラミングすることもあります。
システムエンジニアの仕事とは【本当にプログラミングをするのか】
まずは、そもそもシステムエンジニアという職種は、どういった仕事をする職種なのかについてお話しします。
ネット上ではシステム開発の要件を決める、設計をするなど、上流工程だけをやる人、プログラミングはやらない人というイメージがあると思いますが、実際は、システム開発の要件定義⇒設計⇒開発⇒テスト⇒納品まで、一通りかかわっています。
システムエンジニアは、プログラミングを行うシステム開発の「開発」部分では、スケジュール管理や作成されたプログラムのレビューを担当します。一方、プログラマーの方は、プログラムの作成を担当します。
システムエンジニア中には、システム開発の「開発」「テスト」の部分をいわゆる下請け企業に丸投げする人もいますが、最低限のスケジュール管理はしています。
システムエンジニアの仕事の具体例を紹介
システムエンジニアとして9年間働いている私の仕事の具体例をお話しします。
- あるお客さんから、業務システム内の一部データを更新してほしいと依頼が来る。
- どういった条件でデータを更新すれば良いかお客さんと会話して要件を決める。スケジュールも決める。
- 要件が決まったら具体的にどういったプログラムで実現するか考える。
- 実際にプログラミングをする。
- 作ったプログラムのテストを実施する。
- テスト結果が問題なければ、お客さんに連絡をしてプログラムを納品する。
上記は、最近、私が実際に行った仕事の内容です。この作業すべてを一人で行いました。規模としてはすごい小規模なプロジェクトですが、システムエンジニアとしてやるべき仕事のすべてを盛り込んでいます。
大規模なプロジェクトであればあるほど、システムエンジニアがプログラミングをやることは少なくなりますが、こういった小規模のプロジェクトであれば、システムエンジニアでも、プログラミングをすることもあります。
システムエンジニアにプログラミングのスキルは必要なのか
それでは、システムエンジニアにプログラミングのスキルは必要なのかについて、現役システムエンジニアの私がお話しします。
結論から言うと、システムエンジニアとして幸せに暮らしたいなら、プログラミングのスキルは、絶対に必要です。
プログラミングのスキルのないシステムエンジニアはどうなるのか
実際にあった話ですが、私は昔、プログラミングのスキルがない(=ソースコードの読めない)システムエンジニアと一緒に働いたことがあります。
お客さんとの会話は、プログラミングのスキルがないシステムエンジニアが担当していました。お客さんからは「こういったことはシステムで可能か?」「仕様を変えたいが可能か?」という質問が多いです。
プログラミングのスキルがないシステムエンジニアは、ソースコードが読めないので、お客さんの質問に即時に答えられず、プログラミングのスキルが高い人に何度も質問に行きます。その後、お客さんの質問に回答します。
⇒質問した人、質問された人も無駄に時間がかかります。
また、プログラマーが作成したプログラムをレビューしようにも、ソースコードの読めないので、正しいか誤っているか判断できません。
⇒作成されたプログラムとお客さんが思う仕様があっているか判断できず、手戻りの可能性を常に含んでしまいます。
このように、プログラミングのスキルのないシステムエンジニアがいるだけで、自分も周りも不幸にしてしまうのです。プログラマーから信頼もされません。
プログラミングのスキルのあるシステムエンジニアはどうなるのか
私事で恐縮ですが、私はプログラミングのスキルがある(=ソースコードを読み書きできる)システムエンジニアです。
お客さんから、「こういったことはシステムで可能か?」「仕様を変えたいが可能か?」などの質問が来ても即時回答が出来ますし、すぐ出来なくても自分で調べて自分で回答することが出来ています。
⇒他人に迷惑がかかりません。自分で出来ることは自分できます。
ソースコードも読めるので、プログラマーが作成したプログラムを解読し、お客さんが思う仕様とあっているか判断できます。もし、プログラムに不備があれば、具体的にどうやって直せば良いか的確にプログラマーへ指示できます。
⇒お客さんの思う仕様とプログラムがあっているか判断できるので手戻りの可能性が低いです。
このように、プログラミングのスキルのあるシステムエンジニアがいると、作業の手戻りが少なく、スムーズに作業が進みます。プログラマーからの信頼も厚くなり、頼りになる存在として扱ってもらえます。
私は現在、毎月の残業時間を10時間くらいに抑えられ、幸せなシステムエンジニア生活をおくれています。プログラミングのスキルがあるおかげで、悩むことが少なく、単純に作業スピードが速いのが一番の理由です。
みなさんも、システムエンジニアとして幸せに暮らしたいなら、プログラミングのスキルを絶対に身につけましょう。
プログラミング未経験者がシステムエンジニアになるためには
プログラミングのスキルを持っているシステムエンジニアの方が幸せになれるという話をしてきましたが、プログラミング未経験の方がシステムエンジニアになれないというわけではありません。
私も最初はプログラミングは出来なかったので安心してください。
以下の2つのパターンで、プログラミング未経験者がシステムエンジニアになるために必要なことについて、お話しします。
- 新卒でプログラミング未経験者がシステムエンジニアになる場合
- 転職でプログラミング未経験者がシステムエンジニアになる場合
新卒でプログラミング未経験者がシステムエンジニアになる場合
私の場合は、プログラミング未経験者でしたが、新卒でシステムエンジニアの会社に入社しました。私の経験から考える、プログラミングのスキルを正しく取得するために大切なポイントは以下です。
- プログラミング研修がある会社を選ぶ
- 最初はプログラミングが経験できる現場を希望する
プログラミング研修がある会社を選ぶ
これは必須です。会社によってはいきなり現場、という会社もありますが、絶対に危険です。なるべく長い期間、研修をやってくれる会社を選びましょう。
※あまり大きな声で言えませんが、裏技として、研修をやるだけで給料がもらえるので、研修で十分プログラミングの知識を取得できたら、そのままフリーランスに転職という手もありです。
最初はプログラミングが経験できる現場を希望する
研修が終わると、現場に配属となりますが、大体、配属前に、配属先の希望を会社が聞いてくるので、プログラミングが出来る現場を希望しましょう。
プログラミング技術を取得 ⇒ システム開発の上流工程を経験
の流れが一番効率的に成長できます。
転職でプログラミング未経験者がシステムエンジニアになる場合
こちらは少しハードルは高いかもしれませんが、以下のやり方であれば、比較的簡単にシステムエンジニアになれます。
- プログラミング未経験者でもOKの会社に転職する
- 転職成功までサポートしてくれるプログラミングスクールに入ってから転職
プログラミング未経験者でもOKの会社に転職する
現在プログラマーが売り手市場なので、プログラミング未経験でも転職可能な会社もあります。ただ、絶対に最初に研修期間がある会社を選びましょう。いきなり現場に配属されても、周りの人がちゃんとサポートしてくれるとは限りません。
マイナビIT AGENTへアクセスして、会員登録を行ってください。
そのあと、「業界未経験歓迎」を条件に検索すれば未経験でも転職可能な会社が出てきます。
転職成功までサポートしてくれるプログラミングスクールに入ってから転職
どうせ転職するなら、失敗はしたくないですよね。転職までサポートしてくれるプログラミングスクールがあります。
こちらの方がかなり安全です。しっかりプログラミングを学習してから、転職が成功するまで保証してくれるので、安心です。
転職成功までサポートしてくれるプログラミングスクールを紹介します。無料体験もやってます。
ちなみに、TechAcademyのエンジニア転職保証コースは転職できなかったら全額返金してくれます。失敗したくない人にはぴったりですね。
最後に
システムエンジニアとして9年間働いている私が、システムエンジニアにプログラミングのスキルは必要なのか?について、お話ししました。
システムエンジニアとして幸せに暮らしたいなら、プログラミングのスキルは、絶対に必要
が結論です。
みなさんもプログラミングのスキルを身に着けて幸せなシステムエンジニア生活を送りましょう。
以上です。