「文系からエンジニアになるのはやっぱり大変なのかな…」
「プログラミング未経験でエンジニアになるとどんな感じなんだろう…」
現在、学生でこれから就職活動を始めていく方や、就業中だけどシステムエンジニアに転身したいと考えている人は多いのではないでしょうか。

プログラミング未経験だとなおさら不安ですよね…
かく言う僕もプログラミング未経験・文系卒でエンジニアになった身ですので気持ちはとても分かります。
今回は、そんな僕の実体験をもとに、プログラミング未経験・文系卒でエンジニアになって苦労したことをお話しします。
少しでも参考になれば幸いです!
プログラミング未経験・文系卒でエンジニアになって苦労したこと
プログラミング未経験・文系卒の私がエンジニアになって苦労したことは下記のようなことです。
- プログラミング
- 思考力の浅さ
- 自分で何とかする力の足りなさ
もちろん人によって苦労することは違います。
中には苦労せず持ち前のセンスで切り抜けられる人もいるかもしれませんね。
とはいえ、私と同じよう経験をしているエンジニアは多いはず…
なので、自分にも当てはまるかもなあ、と思って読んでみてください(笑)
① プログラミング


プログラミング未経験 & ゴリゴリ文系でエンジニアになったので、やはりプログラミングで苦労しました。
これまで英語や、フランス語、中国語など、いろいろな言語を学んできましたが、
プログラミング言語がダントツで難しかったです。
苦労したポイントを挙げると、
- 変数という概念に苦戦
- 1つ1つのコードの要素の意味が分からない
- 何より楽しめなかった
こんな感じですかね。
最後のは本当に主観ですが、正直に書きます(笑)
変数という概念に苦戦
これは文系の方には多いのではないでしょうか。
数学が苦手だったということもあって「変数」の扱いには苦労しました。



数学で「x」とか「y」とかよく使いましたね。
プログラミングでは、「変数」に値を設定して、それを他の「変数」に渡して、形を変化させて、
また別の「変数」移し替えて…
みたいなことを常に行っていくわけです。
この作業を繰り返していると、どの変数に何が入っているのかが分からなくなることがよくありました。
もともとは何が入ってたんだったっけ?っとなってまた1から辿る羽目になります。
このように変数に値を設定して利用するという概念が自分にとっては本当に苦労しました。
本当に初歩の初歩なので、今となっては恥ずかしく感じますが。
1つ1つのコードの要素の意味が分からない
これは単純に知識不足 & 根気不足です。
先輩が書いてくださったコードや参考書のサンプルコードでさえも、何を書いているのか意味不明の状態。
もちろん一つずつ順を追って整理していけば理解できることではあるのですが、
最初は、わからないことが多すぎて、そのたびに立ち止まって調べての繰り返しです。
調べてもその内容が理解できず、さらに調べて結局何を調べていたのか見失って、、、ということもしばしば(笑)
エンジニアには根気強く調べるという力が絶対に必要ですね。
もし未経験からエンジニアを目指すのなら、事前に基本のキくらい自習して押さえておくのがいいでしょう。



僕は事前勉強まったくでしたが…(笑)
何より楽しめなかった
エンジニアとして入社し、しばらく経って思ったことがあります。
それは、「プログラミングが思ったより楽しくない」ということです(笑)
毎日しっかり勉強して、それなりにコードも読めるようになって、自分でできることも増えました。
ただ、「なんか思っていたものと違う」と感じたわけです。
これは未経験の宿命というかなんというか、もはや博打ですね。
自分がその物事に対して心躍らせれるかどうかはやってみなくてはわからないものです。
私は心躍りませんでした(笑)
これからエンジニアを目指すみなさん、一度しっかりプログラミングに取り組んでみてください。
それでもエンジニアになりたい方はぜひこちらの世界へ!
② 思考力の浅さ


これはズバリ「考える力」ですね。
文系だから考える力が劣っているというわけではありませんが、
やはり理系でバリバリ数学や研究をされていた方と比べると、考える力にはそれなりに差があったように感じます。
特に「論理的に考える力」と「広い視野で考える力」が自分には足りていなかったと思います。
論理的思考が足りない、、、
論理的思考とは、物事を順序だてて論理的に理解していこう、という思考法です。
論理的思考を必要とする有名な問題を乗せておくのでぜひチャレンジしてみてください!
エンジニアという職業は特に論理的思考が必要な職業です。
「A」が「B」だから「C」だ、「A」と「B」が等しかったら「C」は「D」になる、
のように常に論理的に思考を巡らせ、システムを設計したり、コードを書いたりします。
この力がないと、お客さんの要望を満たさない穴だらけのシステムになってしまうわけです。
ただこの力は普段から意識して物事の「なぜ?」を突き詰めるようにすれば、鍛えられる力です。
エンジニアを目指すのであれば、早めに身に着けておくに越したことはないですね!
広い視野で考えれていない、、、
論理的に考える力に並び、「広い視野で物事を考える力」もエンジニアにとっては不可欠です。
なぜなら、システム開発は他のシステムや機能との兼ね合い、様々な制約のなかで行っていくものだからです。
例えば、一生懸命開発した機能も他の機能とうまく連携が取れなければ使い物になりません。
他のシステムや機能に悪影響を与えてしまうなんてことはもってのほかです。
そのため、常に広い視野を持って業務にあたる必要があります。



自分のタスクを終わらせることに必死で周りを見れていなかったです…
この力も経験でどうにかなるものだとは思うので焦ることはありませんが、
やはり早めからトレーニングしておきたいですね。
③ 自分でなんとかする力の足りなさ


私はわからないことがあると割とすぐに人に頼るタイプでした。
それが悪いことだとは思いませんが、研修中、理系卒の同期に
「文系出身のやつらってすぐ人に頼ろうとするよな」と言われグサッときたのを覚えています(笑)
もちろん分からないことを人に聞くことは大切ですが、
それ以上に自分で解決策を探し、何とかしようとする姿勢が大切だったということです。
なぜなら質問された方も必ず答えを知っているとは限らないからです。
かといって自分で何とかしようとしすぎるのも良くないですね。



悩んだ末に答えが出ず、1日が終わるなんてことは避けたいものです。
自分の場合、20分自分で考えて、それでもわからなければ質問しよう、というようにルールを設定するようにしていました。
とはいえ、いつでも自分で何とかしようという気持ちで挑んでいます!
まとめ
今回は、プログラミング未経験 文系卒エンジニアの私が経験した苦労したことについて3つ取り上げました。
- プログラミング
- 思考力の浅さ
- 自分で何とかする力の足りなさ
他にも掘り下げればいろいろ思い浮かぶのですが、やはりプログラミングが一番大変でした。
プログラミングを楽しめる人はそんなに苦でもないのかもしれませんね(笑)
とはいえ、一度しっかりやってみないことには自分に合っているかどうかはわからないものです。
プログラミング未経験でエンジニアを目指すのであれば、事前にしっかり体験しておくのがよさそうですね。



私のように「なんか違う、、、」とならないように(笑)
ということで、今回はこれで終わりです。
最後まで読んでいただき、ありがとうございました。




コメント