MENU
Abo
某SIer勤務。
ITエンジニアです。
日々の学びをつらつらと書いています。
保有資格:
Salesforce認定アドミニストレーター  
Salesforce認定Platformデベロッパー
Salesforce認定上級Platformデベロッパー
カテゴリー
アーカイブ

プログラミング未経験 文系卒エンジニアが苦労したこと

「文系からエンジニアになるのはやっぱり大変なのかな…」
「プログラミング未経験でエンジニアになるとどんな感じなんだろう…」

現在、学生でこれから就職活動を始めていく方や、就業中だけどシステムエンジニアに転身したいと考えている人は多いのではないでしょうか。

Abo

プログラミング未経験だとなおさら不安ですよね

かく言う僕もプログラミング未経験・文系卒でエンジニアになった身ですので気持ちはとても分かります。

今回は、そんな僕の実体験をもとに、プログラミング未経験・文系卒でエンジニアになって苦労したことをお話しします。

少しでも参考になれば幸いです!

目次

プログラミング未経験・文系卒でエンジニアになって苦労したこと

プログラミング未経験・文系卒の私がエンジニアになって苦労したことは下記のようなことです。

  1. プログラミング
  2. 思考力の浅さ
  3. 自分で何とかする力の足りなさ

もちろん人によって苦労することは違います。

中には苦労せず持ち前のセンスで切り抜けられる人もいるかもしれませんね。

とはいえ、私と同じよう経験をしているエンジニアは多いはず

なので、自分にも当てはまるかもなあ、と思って読んでみてください(笑)

① プログラミング

プログラミング未経験 & ゴリゴリ文系でエンジニアになったので、やはりプログラミングで苦労しました。

これまで英語や、フランス語、中国語など、いろいろな言語を学んできましたが、

プログラミング言語がダントツで難しかったです。

苦労したポイントを挙げると、

  • 変数という概念に苦戦
  • 1つ1つのコードの要素の意味が分からない
  • 何より楽しめなかった

こんな感じですかね。

最後のは本当に主観ですが、正直に書きます(笑)

変数という概念に苦戦

これは文系の方には多いのではないでしょうか。

数学が苦手だったということもあって「変数」の扱いには苦労しました。

Abo

数学で「x」とか「y」とかよく使いましたね。

プログラミングでは、「変数」に値を設定して、それを他の「変数」に渡して、形を変化させて、

また別の「変数」移し替えて

みたいなことを常に行っていくわけです。

例えば、「fruit」とういう変数に「リンゴ」という値を設定します。
次にその「リンゴ」の形を変えて「リンゴジャム」にし、変数「jam」に移します。
それを10個複製し、変数「jamPack」に渡します

みたいな。

この作業を繰り返していると、どの変数に何が入っているのかが分からなくなることがよくありました。

もともとは何が入ってたんだったっけ?っとなってまた1から辿る羽目になります。

このように変数に値を設定して利用するという概念が自分にとっては本当に苦労しました。

本当に初歩の初歩なので、今となっては恥ずかしく感じますが。

1つ1つのコードの要素の意味が分からない

これは単純に知識不足 & 根気不足です。

先輩が書いてくださったコードや参考書のサンプルコードでさえも、何を書いているのか意味不明の状態。

もちろん一つずつ順を追って整理していけば理解できることではあるのですが、

最初は、わからないことが多すぎて、そのたびに立ち止まって調べての繰り返しです。

調べてもその内容が理解できず、さらに調べて結局何を調べていたのか見失って、、、ということもしばしば(笑)

エンジニアには根気強く調べるという力が絶対に必要ですね。

もし未経験からエンジニアを目指すのなら、事前に基本のキくらい自習して押さえておくのがいいでしょう。

Abo

僕は事前勉強まったくでしたが(笑)

何より楽しめなかった

エンジニアとして入社し、しばらく経って思ったことがあります。

それは、「プログラミングが思ったより楽しくない」ということです(笑)

毎日しっかり勉強して、それなりにコードも読めるようになって、自分でできることも増えました。

ただ、「なんか思っていたものと違う」と感じたわけです。

これは未経験の宿命というかなんというか、もはや博打ですね。

自分がその物事に対して心躍らせれるかどうかはやってみなくてはわからないものです。

私は心躍りませんでした(笑)

これからエンジニアを目指すみなさん、一度しっかりプログラミングに取り組んでみてください。

それでもエンジニアになりたい方はぜひこちらの世界へ!

② 思考力の浅さ

これはズバリ「考える力」ですね。

文系だから考える力が劣っているというわけではありませんが、

やはり理系でバリバリ数学や研究をされていた方と比べると、考える力にはそれなりに差があったように感じます。

特に「論理的に考える力」と「広い視野で考える力」が自分には足りていなかったと思います。

論理的思考が足りない、、、

論理的思考とは、物事を順序だてて論理的に理解していこう、という思考法です。

論理的思考を必要とする有名な問題を乗せておくのでぜひチャレンジしてみてください!

ある人は毎日清潔なシャツに着替えますが、
洗濯が嫌いなので毎週日曜日にクリーニング店に行き1週間分のシャツのクリーニングを依頼します。
またその時、前週クリーニングを依頼した分を受け取っています。
彼女がこのサイクルで生活するためには、最低何枚のシャツを持っている必要があるでしょうか。

解答は「こちら


エンジニアという職業は特に論理的思考が必要な職業です。

「A」が「B」だから「C」だ、「A」と「B」が等しかったら「C」は「D」になる、

のように常に論理的に思考を巡らせ、システムを設計したり、コードを書いたりします。

この力がないと、お客さんの要望を満たさない穴だらけのシステムになってしまうわけです。

ただこの力は普段から意識して物事の「なぜ?」を突き詰めるようにすれば、鍛えられる力です。

エンジニアを目指すのであれば、早めに身に着けておくに越したことはないですね!

広い視野で考えれていない、、、

論理的に考える力に並び、「広い視野で物事を考える力」もエンジニアにとっては不可欠です。

なぜなら、システム開発は他のシステムや機能との兼ね合い、様々な制約のなかで行っていくものだからです。

例えば、一生懸命開発した機能も他の機能とうまく連携が取れなければ使い物になりません。

他のシステムや機能に悪影響を与えてしまうなんてことはもってのほかです。

そのため、常に広い視野を持って業務にあたる必要があります。

Abo

自分のタスクを終わらせることに必死で周りを見れていなかったです

この力も経験でどうにかなるものだとは思うので焦ることはありませんが、

やはり早めからトレーニングしておきたいですね。

③ 自分でなんとかする力の足りなさ

私はわからないことがあると割とすぐに人に頼るタイプでした。

それが悪いことだとは思いませんが、研修中、理系卒の同期に

文系出身のやつらってすぐ人に頼ろうとするよな」と言われグサッときたのを覚えています(笑)

もちろん分からないことを人に聞くことは大切ですが、

それ以上に自分で解決策を探し、何とかしようとする姿勢が大切だったということです。

なぜなら質問された方も必ず答えを知っているとは限らないからです。

かといって自分で何とかしようとしすぎるのも良くないですね。

Abo

悩んだ末に答えが出ず、1日が終わるなんてことは避けたいものです。

自分の場合、20分自分で考えて、それでもわからなければ質問しよう、というようにルールを設定するようにしていました。

とはいえ、いつでも自分で何とかしようという気持ちで挑んでいます!

まとめ

今回は、プログラミング未経験 文系卒エンジニアの私が経験した苦労したことについて3つ取り上げました。

  1. プログラミング
  2. 思考力の浅さ
  3. 自分で何とかする力の足りなさ

他にも掘り下げればいろいろ思い浮かぶのですが、やはりプログラミングが一番大変でした。

プログラミングを楽しめる人はそんなに苦でもないのかもしれませんね(笑)

とはいえ、一度しっかりやってみないことには自分に合っているかどうかはわからないものです。

プログラミング未経験でエンジニアを目指すのであれば、事前にしっかり体験しておくのがよさそうですね。

Abo

私のように「なんか違う、、、」とならないように(笑)

ということで、今回はこれで終わりです。

最後まで読んでいただき、ありがとうございました。

解答

毎日シャツを替えるので、1週間で着るシャツの数は7枚。
それをクリーニングに出し、同様に前週クリーニングに出した7枚を受け取る。
すると、答えは7+7=14。
とはらなず、クリーニング店に行くためには、その時に着るためのシャツが1枚必要。
というわけで、答えは15枚。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

某SIer勤務。
Salesforceエンジニアです。
日々の学びをつらつらと書いています。
Certified Administrator
Certified Platform DeveloperⅠ
Certified Platform DeveloperⅡ
Certified Sales Cloud Consultant

コメント

コメントする

CAPTCHA


目次