コラム

文系エンジニアが解説!文系や未経験からエンジニアになるために必要なスキルやステップ

IT人材は年々需要が高まり、2030年には最大79万人ものIT人材が不足する可能性があると考えられています。それに伴って、文系や未経験からでもエンジニアになりたいという人も増えているでしょう。実際、筆者自身も文系かつまったくの未経験からエンジニアになりました。その理由も、需要が高まっていて、技術も日々誕生、進化しているという将来性と、PCひとつあれば場所にとらわれずに仕事ができそう、という働き方の自由度に魅力を感じたからでした。今だからこそわかる、筆者が就活や就職前に知っておきたかった情報を軸に、文系や未経験からでもエンジニアになれるのか、なるためにはどうしたら良いかを解説します。

文系や未経験でもエンジニアになれる?必要なスキルは?

「エンジニア(ITエンジニア)」とは、ITの知識と技術でものづくりをする技術者のことです。ITやプログラミングというと、理系出身の人が多いイメージがあるかもしれません。実際、数学の知識があった方が有利なプログラミング言語もあります。しかし、だからといって「文系や未経験からエンジニアになるのは難しいのではないか」「適性がないのではないか」と心配する必要はありません。

そもそも、エンジニアとして求められるスキルはプログラミングスキルだけではありません。実際にどんなものが求められるのか、いくつか紹介します。

ITの知識

ITの知識にもさまざまなものがあります。例えば、ハードウェア(パソコンなどの機械そのもの)や、ソフトウェア(パソコンなどの機械に処理の命令を出すプログラム)、ネットワークに関するものなどです。また、システムを開発する工程やセキュリティなど、間接的に関係する知識も挙げられます。どのような業務でもこれらの基礎知識が求められ、目安としてはITパスポートや基本情報技術者試験程度です。そのため、学習は前もってしておくとスムーズに業務ができます。そして実際の業務に入ってから、その内容に合わせて分野を絞って知識を深めていきましょう。

論理的に考える力

論理的に考える、とは、データや事象などの物事を整理して、飛躍のないように組み立てて考えることです。そしてその力はエンジニアとして働くうえで、システムの設計や、開発、その後の運用までのどの場面でも必要となります。

例えば、どんなシステムにするか設計する際、要望やコスト、技術力、リスクなどさまざまな観点から物事を考えて組み立て、最適な実現方法を考えます。また、実際にプログラミングをする際にはエラーの原因がどこにあるか、発生した事象から一つ一つたどって突き止めたり、プログラミングのルールをもとに最も処理が軽くなる書き方は何かを考えたりもします。

コミュニケーション能力

エンジニアは基本的に1人だけで案件を進めることはありません。人数規模はさまざまですが、チームで動き、メンバー全員で密に情報共有をする必要があります。また、お客さんとのやりとりがある場合は、相手がITに詳しくなくても認識に違いの生まれないようなコミュニケーションが求められます。

情報に敏感でいること

IT技術は目まぐるしく変化します。新しい技術の参入だけでなく、既存の技術のバージョンアップ、それに伴って使えなくなるもの、流行り廃りなどもあります。より良いものづくりのためには、そういった情報を逃さないことが重要です。

エンジニアの仕事

自身のエンジニアとしてのキャリアをイメージし、これから準備していくために、エンジニアがどんな仕事や働き方をしているかは、前もって知っておきたい情報です。ここではエンジニアの種類と働き方を紹介します。

エンジニアの種類

エンジニアは大きく3つに分類することができます。

1.開発エンジニア
2.インフラエンジニア
3.営業系エンジニア

1.開発エンジニア

WEBアプリやWEBサイト、ゲーム、AIなどの開発を行うエンジニアです。日常でよく利用したり目にしたりするサービスやシステムは、開発エンジニアたちがプログラムを組んでいます。

2.インフラエンジニア

WEBサイト等を運用するうえで基盤となる、サーバーの運用や管理、ネットワークの構築などを行うエンジニアです。この基盤がないと何もできず、また不備があればサービスが止まってしまうこともあるため、非常に重要な技術者です。

3.セールスエンジニア

エンジニアとしての知識を活かして営業を行うエンジニアです。要望を実現するには何が必要か、何ができて何ができないか、より良い方法はないかなどを、専門的な知識を活かして考え、クライアントとのやりとりを行います。

働き方

エンジニアの働き方は、どこに所属するか、あるいはどこにも所属しないかによって変わります。その形態は大きく4つに分類できます。

1.自社開発企業
2.受託企業
3.SES
4.フリーランス

1.自社開発企業

名前の通り、自分の会社内でシステム等の開発を行っている会社形態です。企画や開発、運用までを行うため、それら各フェーズに関わることができます。システムを作り上げるところから成長まで携わることができるのは、自社開発ならではの魅力です。

2.受託企業

クライアントからサービス開発の案件を受注し、開発する会社形態です。さまざまな案件に関わることができ、それぞれ内容や必要な技術も異なるため、ITスキルを広く身に着けることができます。

3.SES

開発現場にエンジニアを派遣する形態です。この契約をしているエンジニアはクライアント企業に派遣され、そこで開発を行います。さまざまな企業に出向くため、人脈を広げることができ、大企業の案件に関わることができることもあります。

4.フリーランス

会社等に所属せずにエンジニアとしての仕事をします。どこかに所属しないからこその大変さはありますが、時間や場所にかかわらず自由度の高い働き方ができます。ただ、未経験でいきなりフリーランスになるのはあまり現実的ではなく、どこかに所属して経験を積むか、学校やITスクールで専門知識をつけるなどする必要があるでしょう。

エンジニアになるためのステップ

実際にエンジニアとしてはたらくためのステップを紹介します。

1.どんなエンジニアになりたいかを考える
2.学ぶべき知識や技術を調べる
3.学習の目標と方法を決めて実践する
4.就活/就職(またはフリーランスで案件をこなす)

1.どんなエンジニアになりたいかを考える

これまでの話をもとに、どんなエンジニアになりたいかを想像してみましょう。イメージができてくると、勉強するべきことや、どんな会社を選んだら良いかも具体的に見えてきます。また、なりたいエンジニアといっても必ずしも明確に決まっている必要はなく、ちょっとした興味関心や、したいことを取っ掛かりに、進む方向が少し見えてくるだけでも問題ありません。

考えるための観点として、以下のようなものがあります。
・種類(開発、インフラ、営業系)
・働き方(自社開発、受託開発、SES、フリーランス)
・技術(AIなどの最新技術や、車の自動運転システム、ロボットなど)
・業界(人材、医療、金融、農業、製造業、出版、ゲームなど)

こういった観点から、自分のやりたいことや興味のあることをヒントに、エンジニアとしてどんな仕事や働き方をしたいかを考えてみましょう。

2.学ぶべき知識や技術を調べる

どんなエンジニアになりたいかが見えてきたら、それをもとに会社や、求人の情報を調べてみましょう。この段階で会社選びをする必要はなく、どのような技術やプログラミング言語が使われているかに注目してみましょう。中途採用ページにより細かく記載がある場合もあるため、新卒の場合でもその情報は見ておくと良いでしょう。案件や業界によって、用いる言語や技術が異なるため、前もって調べておくことは重要です。

もし学ぶべきプログラミング言語が分からなかったり、絞れなかったりする場合は、ひとまず人気な言語を勉強してみるのが良いでしょう。人気な分、需要が高く使う場面も多いので、学んでおいて損はありません。また、プログラミング言語が違ってもコードの書き方や文法が似ている場合も多いので、何か一つ学べば応用がききます。

3.学習方法を決める

学ぶべきことが見えてきたら、その方法を決めましょう。ここでは3つの学習方法を紹介します。

(1)就職での研修
(2)スクール
(3)独学

(1)就職での研修

未経験でもエンジニアとして採用を行っている会社を探して就職し、その際の研修で学習する方法です。会社によっては、専門の外部講師によるプログラミング研修が用意されています。その場合、短期間で知識を習得するためのカリキュラムやテキストがあり、体系立てて効率よく学ぶことができます。お金をもらいながら、整った環境の中で学習ができる点がメリットです。ただ、未経験でも就職可能であるという条件がつく分、就職できる会社の幅は狭まってしまうのがデメリットでもあります。

(2)スクール

スクールに契約して学習する方法です。就活や就職前に学習できるため、それまでに学習を進めておけば就職先の幅が広がります。ただ、入学金や授業料が必要になるため、それなりに費用が掛かり、スクールによって学べる言語や技術のラインナップが異なります。

(3)独学

本やインターネット、コミュニティなどを通して自分で学習する方法です。低コストでスキマ時間などを使って勉強でき、学べることの範囲も限られていません。ただ、人に質問しづらいことがデメリットです。プログラミングは、人によって何通りもの書き方があったり、マニュアルが英語で書かれていたりします。そのため明確な解決方法がネットで調べてもわからない場合も多く、つまずいたときに人に聞いたり相談したりできる環境は非常に重要です。

4.就活/就職

就活の際は、ステップ1で描いたエンジニア像を参考に会社選びをします。自分の希望やしたいことと、その会社の事業やその形態、用いている技術とを合わせて選びましょう。

エンジニアになるまでに学んでおきたい基礎知識

エンジニアとして働くための準備として、プログラミングのほかにITに関する基礎を学んでおくと、研修や実務の際にさまざまな物事の理解がしやすくなります。必須ではありませんが、基本的な用語だけでも押さえておくと良いでしょう。勉強方法としては、ITに関する試験用のテキストが重要なトピックが体系立ててまとめられていておすすめです。特に、未経験でIT業界に入るのであれば「ITパスポート」や「基本情報技術者試験」の合格レベルまで学習できていれば十分でしょう。また、実際に合格することができれば就活にも役立ちます。

まとめ

未経験でもエンジニアになることは十分に可能で、文系だから適性がないということもありません。実際にそれでエンジニアになってみて感じたことは、エンジニアと言ってもさまざまな種類や働き方があり、使う言語や技術も異なるため、それらを就職前にしっかり知っておくこと、そしてそれをふまえて自分のキャリアを選択する必要があるということです。また、最初の勉強は大変でも、プログラミングで実際にものづくりができるようになってくるととても面白いです。未経験でも、文系でも、やってみたい気持ちがあればぜひ挑戦してみてくださいね。

[参考]
・みずほ情報総研株式会社「IT人材需給に関する調査 調査報告書」(2019年3月)
https://www.meti.go.jp/policy/it_policy/jinzai/houkokusyo.pdf
・DMM WEBCAMP「エンジニアとは?エンジニアの仕事をわかりやすく徹底解説」(2023年1月31日)
https://web-camp.io/magazine/archives/25682

TechTrendsへのお問い合わせ