プログラマーになるのは理系で、文系には厳しいと思っていませんか?
確かに、プログラミングは一見、理系の人々に特化したスキルのように思えます。
しかし、実態として文系でプログラマーとして成功する人も多く、私自身も文系出身です。
さらに言えば、文系の大学を中退した状態から、ITエンジニアとして10年以上のキャリアを積むことができています。
今、給料や待遇に不満があるのであれば、プログラミングは現状を打破する強力なスキルです。
バーテンダー、家具職人、フリーター、ニート、色んな立場の人がプログラミングで人生を変えてきました。
私は、文系大学中退ニートで、心も荒んで生活もままならない、どうしようもない状況からのスタート。
それでも、プログラミングでリモートワークで時間と場所の自由、高収入によるお金の自由を獲得できました。
私自身の経験から、むしろ、文系出身者こそプログラマーになることをおすすめしています。
この記事では、文系出身者がプログラミングを学ぶメリットと、その道へ進むべき理由を詳しく解説します。
なぜ文系出身者にむしろプログラミングをすすめているか?
プログラミングは必ずしも高度な数学的な知識が求められるわけではないです。
大事なのは、問題解決能力という人間の基本的な能力が求められています。
文系、理系関係なく、問題解決スキルを有しています。
さらに言えば、現状に課題や不満を感じてプログラマーを目指す人なんて、めちゃくちゃ問題解決能力あると思いませんか?
課題を感じて、スキルを習得しようとする姿勢、マインドが一番大事な能力です。
プログラミングは言語であり、人間がもともと持っている思考プロセスそのものだから
プログラミングは一種の言語であり、「コード」という形で、コンピュータに対して命令を伝えるための手段です。
これは、外国語を学ぶことと多くの面で似ています。
新しい文法、語彙、表現方法を学び、それを使って意味のある「会話」を作り上げる過程は、外国語を学ぶことと似ています。
この時点で、人文、外国語系の人は有利に思えてきませんか?
さらに言えば、プログラミングは本質的には文章です。
5W1H、どういうときにどうする、繰り返しやること、緊急の時にやること、などを設計書という形でまとめていきます。
それを最後にコンピュータにわかる形で言語化していく、この過程がプログラミングです。
上記から、社会の流れ、経済の動き、会社・顧客の求めていることがわかる方がよさそうですよね。
経済学や社会学を学んできた人は、そのスキルが活かせそうじゃないですか?
プログラミング言語 == 理系のスキルではない
実は数学ができると自動的にプログラミングができるわけではありません。
確かに数学的思考力があるとプログラミングに活かすことはできます。
しかし、理系の人も頑張ってプログラミング言語を勉強して覚えており、その速度は文系、理系、あまり変わらないです。
これは私自身が何十人も新人教育に関わってきた経験からです。
理系でプログラミングを覚えるのが速い印象を受けるのは、以下理由からです。
- 数学的知識が必要な分野
- その人の学んでいる専門領域があって、それを解決するためにプログラミングをしている
- 高校、大学でプログラミングに触れている
数学的知識が必要な分野
実はそこまで多くないですし、そもそもすみ分けされています。
高度な数学的な知識が必要な専門職としての人材としての仕事をしています。
業務に関わる大部分のプログラミングの仕事には、ほとんど数学的知識がいらないか、中学・高校レベルの数学知識があれば対処可能です。
その人の学んでいる専門領域があって、それを解決するためにプログラミングをしている
理系の専攻領域の分析のためにプログラミングをする場合があります。
業務知識の理解、何をどう実現するかを決めてからプログラミングすることが多いですが、前提の知識をクリアしているから速いわけです。
つまり、文系の方がよくわかっている領域であれば、文系の方が速くプログラミングできます。
より社会に近い分野を学んでいることが多いので、その点は文系がかなり有利です!
高校、大学でプログラミングに触れている
理系の人がプログラミングできるのは、そもそも学校で触れたことがあるから、が一番大きい理由です。
経験者の理解が速いのは当たり前ですよね...
文系・理系関係なしに勉強して、経験者に追いつきましょう。
創造性と問題解決能力
よいプログラマーはただ技術的な問題を解決するだけでなく、創造的な解決策を見つけることも求められます。
これはアートや文学などのクリエイティブな分野で訓練される能力です。
この視点から、文系出身者はプログラミングに新鮮な視点を持ち込むことができます。
プログラミング大好き!な人よりも、いかに課題を解決するかを考えられる人の方が、良いプログラマーになれます。
解決策はプログラミング以外にもあります。
そこも含めて、トータルで考えられる人が求められており、この点はむしろ文系が得意とするところのはずです。
問題解決のプロセスは、ある目標に向かって論理的なステップを組み合わせて解決策を構築する過程です。
こういった論理の積み上げは、哲学からも応用可能な領域です。
システム開発は会話や文章、ドキュメントで無数のコミュニケーションを通じて作られます。
ブレインストーミング、課題選定、障害対応、全て日本語ありき、言葉ありきです。
方針が決まって初めてプログラミング言語が登場します。
プログラミング言語が求められる比率は意外と少ないのです。
上記から、そもそもの日本語能力が高い人、抽象的な思考能力が高い人が開発の分野で活躍できると考えられます。
文系出身者がプログラミングを学ぶメリット
これまで説明した文系出身者が備えている資質は、ソフトスキルと言い換えることもできます。
ソフトスキルとは、仕事をこなすうえでベースとなるスキルのことです。具体的にはコミュニケーションスキルや協調性、論理的思考力、創造性などが該当します。ソフトスキルに該当するスキルは全て明確には定まっていませんが、一般的には社会人としての基礎スキルなどが該当することが多いです。
Schooの記事より引用
これまで学校でやってきたことに加え、今何らかのプログラミング以外の業務についた経験がある人もいるかもしれません。
文系の人は勉強することで、ソフトスキル + プログラミングを持った人材になることができます。
何もプログラマー専業だけが選択肢ではないです。
昨今、どんな職場でもITスキルは求められるようになってきています。
ITの知識があれば、今の業務を自分で効率化も可能ですし、ITの会社に頼むとしても知識が合った方がより良いものが作れます。
文系の人の場合、今持っている知識、スキルにプログラミングを掛け算できることが最大の強みです。
プログラミングを勉強したくなったら
興味が湧いてきたら、まずはPythonの勉強をおススメしています。
Pythonはファイルの操作や、ブラウザに表示しているデータの取得の自動化にも良く活用されており、
今、何かを業務をしている方であれば、すぐに役立つスキルが学べます。
もっと深く知りたい、という場合はスクールがおススメです。
こちらでも色々紹介していますが、副業コースなど柔軟に対応も可能です。
まずは無料相談を利用してやるぐらいの気持ちで、相談してみてくださいね。