LoginSignup
1
2

IT業界未経験からPHP⇒Python⇒Java⇒VBA、XMLと学習言語と転職フェア会場と人生をうろうろして感じたこと

Last updated at Posted at 2024-01-10
自分の学習言語ロードマップのうろうろ歴

無事とあるPHP、Laravelを中心とする半年のカリキュラムを課す民間のプログラミングスクールを修了し、転職フェアなどにも何回か参加してみたところ、「実はプログラミング言語の需要には地域差がかなりある」ということを知り(下記参照)、エッ...(゚Д゚)と思いながら、時代はAIだろ(´д`)と思って、Pythonをやってみたら少しは分かったけど、居住地域の関係で Javaも併行し始めたけど、Pythonを使うかな(´。`)と思って内定をいただいた会社の自分の所属する部署では一番使うのは VBA、XML とのことで、今は急遽ExcelやVBAを触りまくったかと思ったら、今の請負業務先で一番使っているのはIllustrator、ときどきLinuxコマンド(プログラミングは最近あまり仕事ではやってないなあ(´。`)・・まあ、そもそも仕事をもらえることに感謝。Adobeソフトの公共職業訓練も受けてて良かった…))

① 実は地域によってプログラミング言語に需要ニーズに違いがある。(-_-;)

〇転職活動を通して感じた地域の言語ニーズの差異に関する私見

(1)求人がどの地域も万遍なく一番多いのは**Java、意外と多いのは SQL、Python**

(2)フロントエンドなら、ReactやVue、AngularといったJavascriptのフレームワーク、
 バックエンドなら、PHPのLaravel
といったフレームワークが使えるとよい。

(3)関東圏、関西圏の方が当然だが、言語の幅が広い

(4)東海圏は、Java及びC#かC++かVBAやVBが圧倒的に強い(東海が他と比べ製造業が圧倒的に盛んなため。前者はFA(factory automation)等、後者は工場内の業務効率化などに多く利用されているように感じました。)

(5)山陰はRubyかJavaが、次いでPHPが強い(Ruby開発者のMatzさんが島根県在住の方のため。)なお、島根県は以下のサイトにあるように県を挙げてIT技術者の誘致を行っています。(各地方に支部がある会社も多くあります。)※出雲大社で有名な出雲市には実は空港があります。

https://www.shimane-itworks.jp/?gclid=CjwKCAiA-vOsBhAAEiwAIWR0TX5Dq2PA09KVRfx0tx6kg8W72aVnEokpdlchyYWRuTCaNkciE36shBoC53YQAvD_BwE


※なお、プログラミング言語は他にも、どんだけあんねん(´。`)というぐらいあり、個人的には、CMやネット広告でも有名なレバテック、Paiza、Green、Findy転職エージェント企業Webサイトから逆算して、今後ニーズが高そう、かつまだ全エンジニアに対しての履修率が低いものをやっていった方が細くても長く続くのかな・・と思っています。例えば他には、Go(ゴー)、Rust(ラスト)、R(アール)、Flutter(フラッター)あたり???

また最近以下のような記事もありました。(※文中のTOIBE指標というのは、TIOBEというオランダの企業が集計している人気プログラミング言語ランキングの数字です)
https://news.yahoo.co.jp/articles/27c5ac22f025706af46aea2e2fc00c07203135da

② 心身共に健康であれば、早い段階で転職フェアに行き(もしくはオンラインの転職フェアに参加し)人事や広報の人とガンガン話した方が良い

詳細

どれだけ自分にとって最高のポートフォリオを作っても、それを企業が求めているわけではなくあくまで参考資料なので、本業として食べていくことを念頭に考えている場合は個人的には転職フェアや企業訪問ツアーに結構足を運んだのは良かったと思います。なお、エンジニア専用の転職フェアでなくとも地域の商工会議所などが主催している一般の業種にもIT系の枠を求めている企業もあります。(例えば、冠婚葬祭系)

 転職フェアに行って年齢の壁さえクリアすれば、IT業界には、そもそも入社後に業務に必要な言語やツールの研修があるところも少なくないことを知りました。(※今、学習している言語が無駄になるわけではなく、基本的な部分は似ていることも少なくないので、スクールを利用されている方はまずはスクールのカリキュラムに専念された方がいいです(例えばRubyはJavaから派生した言語のため))

 自分は2年前のお正月に8年間続けていた前職で体調を崩してからの3ヶ月閉鎖病棟での入院生活⇒自宅療養ののち徐々に回復⇒公共職業訓練&プログラミングスクール利用からの復職だったのですが、転職フェアには現状どうすべきかリクルートのお母さん的存在のおばちゃんが話を聞いてくれるブースもあったりします。

③ どうしても異業種からだとWEB系に目が行きがち

以前それっぽいことを書いたQiita

https://qiita.com/thinking-weed/items/3d18e09111af7ed86282

 

④ compassやFindy(※下記リンク参照)のLT(Lightning Talk:ライトニングトーク)は各企業の技術力発信の場であると同時に人材募集の場でもある

 LT とは各企業を代表する人が企業で使っている技術・やってよかったことを時間を区切って順番にプレゼンする場です。compassなどのオンラインでよくあります。

 自分の技術力が足りなかったり、選定している技術にズレがあって登壇者の行っていることが違っていても、何回か続けて聞いていると、その会社がどういう業務を日々しているのかぐらいは徐々になんとなく分かってきます。

そして、よく聞いていると後半に求人をしているところも結構あります

⑤スキルチェックをする場合は、(Ⅰ)importする(=プロジェクト毎に装備する)もので機能が細分化するものや(Ⅱ)「フレームワーク(※「純正の」という人もいます)を使わないことも多いもの:PythonやJava、Javascript等」でスキルチェックをした方が幅が利く?(※あくまで私の偏見です)(-_-)

詳細

なぜかというと、例えば、PHPの書き方とそのフレームワークのLaravelの書き方がそこそこ違うなど、元の言語とそのフレームワークの書き方の作法が違うことがあるからです。じゃあ、最初からフレームワークだけやればいいんじゃない??(´。`)??と一時期思ったこともあるのですが、フレームワークをある程度理解するには、元の言語に関する知識が必要という・・(´д`)。そのため、スクールでメインで学習したのはPHPなのに、スキルチェックは純正で使う頻度が高い(?) Pythonでやることが多かったし、今後ももしするときは、OpenPyXL、pandas、win32com等の業務効率化系の、エクセルやVBAとも相関が強い外部ライブラリーが多くあるので、復習も兼ねておそらくPythonでやります。

 なお、リファクタリング(既存の運用しているシステムなどのコードを別の言語でどうすればいいか考えて書き直すこと、コードの構成)は結構骨が折れるので、企業によってはあえてフレームワークを使わないこともあります。

その他、いくつかの言語に関する諸注意・所感

※少なくとも例えば、Pythonは、Python内であっても、フレームワークやimport(≒カスタマイズ)モジュール(≒装備で)書き方ややることが全然違うため、入社時のコーディングのテストは一般的な基礎的な文法を問われる傾向が強い印象があります。(※モンスターハンターの大剣と弓矢ぐらい、草タイプポケモンとピクミンぐらい操作方法が違います。)


※また、Javascriptは他の言語に比べて、React、Vue.js、Angular等…これまたどんだけあんねんというぐらい、フレームワークがあり、少しかじった程度ですが、例えばReactとVue.jsは全然書き方が違うし、既に現役としてバリバリ働かれている方の話を聞くと、プロジェクトや現場でどれを使うかは全然違うようです。、ただ結局はいずれもJavascriptなので、フロントエンド希望なら特に自分のようにIT業界未経験のうちはある程度、素のJavascriptに慣れておいた方がいい気がします。なお、ChatGPTにフレームワークを「純正のJavascritptに直して」等とプロンプトを打つと、超長いscriptが出てきます


※自分もプログラミング学習当初勘違いしていたので、念のために挙げておくとJavascriptはJavaとは全然違います。あくまでJavascriptはざっくりいうとHTML&CSSのみで作られた静的なページ(※全然動かない昔のHPに近いです)の「体裁を整える」「カッコイイ感じにする」のに使う言語です。また、Javaは何らかの大規模なシステムを作るときとかに使われる言語で、主なフレームワークはspring bootです。身近なところだと、図書館の本の管理システムとかに使われていたりします


※企業によっては、PHPなど従来のコードが膨大になっており、時間的コスト面からフレームワークを使わないプロジェクトもあるそうです。

 

⑥統合開発環境(IDE)は、学習段階では結構VScodeに一本化できる

詳細

https://qiita.com/thinking-weed/items/ec22f887b5643bd260f2

 ※下記の⑫ Pythonプログラミング VTuber サプー
https://www.youtube.com/@pythonvtuber9917
にもありました

 参考書から入った場合、この開発環境を入れろと最初にかいてあることが多々ありますが、コードを書く段階では、VScodeで結構ゴリ押しできます。例えば、Javaはeclipseという統合開発環境が有名ですが、自分は面倒だなと思って、次の記事を参考にして、しばらくVScodeでやっていました。

https://teramaguro.hatenablog.com/entry/2021/12/28/042743

 PythonもAnacondaという開発環境をPCに入れたものの、今のところはVScodeで拡張機能(Python、autopep8等)を入れれば差し支えなく動いています。本当はもっとDockerとかで開発環境やバージョンなどを揃えるのだと思いますが・・・(下記の主な参考資料②参照)なお、Javaをやる場合は当初、上リンクにあるExtension Pack for javaという拡張機能を入れてやっていましたが、途中から以下リンクのAdoptiumという会社のJDKという開発環境(無料)を入れました。VBAはExcelとかWordとか入ったらオプションで開発タブさえ出せばいけます

https://adoptium.net/
インストール時の参考リンク:https://www.javadrive.jp/start/install/index6.html#section1

※会社によってはセキリティの関係で社用PCには、VScodeなどを上司の許可が無いと入れられなかったりするので注意が必要です。(今働かせてもらっている会社はそうです)

〇日頃お世話になっている自分のような弱々エンジニアにやさしい学習参考資料・情報源

https://qiita.com/

https://connpass.com/

https://zenn.dev/

https://teratail.com/

いずれもエンジニアのための学習共助サイト

⑤ 技術系メーリングリストで質問するときのパターン・ランゲージ
https://www.hyuki.com/writing/techask.html

※「こういう質問」の仕方をすると端的で相手も答えてくれやすいというエンジニアが好むらしい質問の仕方の定型文

⑥Progate  大体つきづき1200円ぐらいで各言語の概要を学べるサイト。HTML&CSSはかなりマニアックのものもやる
 https://prog-8.com/

⑦SAMURAIENGINEER Blog プログラミング言語タブ
 https://www.sejuku.net/blog/category/programming-language

⑧Paiza
 スキルチェック機能&それに応じて求人が届く機能がついているエンジニア専用転職ポータルサイトの1つ。なぜか運営の代表の方がX(旧 Twitter)の「プログラミング初心者」コミ二ティにいらっしゃって発見したときはびびった。
 https://paiza.jp/

⑨Findy
 スキルチェック機能&それに応じて求人が届く機能がついているエンジニア専用転職ポータルサイトの1つ。同名運営会社がDevReLが盛んで、compassを通してオンラインセミナーをよく主催しているため、登録しておくとメールにどんどん業界の最新の動向を学べる。Pythonや機械学習系の求人が多く、たまに数学者の求人もある。

トップページへのリンク

https://freelance.findy-code.io/?psafe_param=1&fr=google_pmax___c_&utm_term=&utm_campaign=FL_pmax&utm_source=google&utm_medium=pmax&utm_content=pmax&hsa_acc=8780395690&hsa_cam=19820159029&hsa_grp=&hsa_ad=&hsa_src=x&hsa_tgt=&hsa_kw=&hsa_mt=&hsa_net=adwords&hsa_ver=3&gad_source=1&gclid=CjwKCAiA-vOsBhAAEiwAIWR0TSs_gOJIoEm0I0_LWo_SiqVsmSoHiL54mFW7VFccGnga-RmrlV6c4RoCEOEQAvD_BwE

⑩次のアカウントの方がXでポストする技術記事

Shota Nukumizu
@Nameless_SN

KNR | AI×プロダクト紹介
@MacopeninSUTABA

Pythonアカデミア
@python_academia

⑪ せかチャン - 世界一わかりやすい情報科チャンネル(youtubeチャンネル)
https://www.youtube.com/@SekaChan

⑫ Pythonプログラミング VTuber サプー
https://www.youtube.com/@pythonvtuber9917

※他にも探すとyoutubeで講義されている方も結構います

⑬40代からプログラミング
https://biz.addisteria.com/
Laravelに関する情報が網羅されている。かなり詳しい

⑭Ruby会議、PyCon(Python Conference)
 凄い人たちがいっぱい登壇するセミナー
 https://rubykaigi.org/2024/
 https://www.pycon.jp/

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2