現在転職活動中の者です。
昨今AIの普及が著しいですが、これから転職する場合javascriptとjavaどちらに重きを置いて転職活動を行うべきでしょうか。
以下、私のプロフィールになります。
・社会人4年目
・SESでJSとjavaを少し触った経験あり
・javascript、reactは参考書で学習済み(実務レベルの能力はまだないです)
・javaはJava Goldの資格取得済、現在はspringを学習中
AIの普及により、これから先どのプログラミング言語が生き残るのか分からず、進む方向が漠然としています。
様々な観点から見る必要がある内容だと思いますが、将来性という視点から見た場合の助言を頂きたいです。
宜しくお願いします。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答11件
#1
総合スコア182
投稿2025/07/16 03:02
JavaScriptに一票。
Javaはレガシーに成りつつあるような気がする。
あくまでオープンソースの傾向なんだけど、Sun MicrosystemsがOracleに買収されて以降、ハッカー達がOracleを嫌ってんだよね。
Oracleを嫌ってる、って事はJavaを嫌うようになった、って事だ。と言う事は、オープンソースでのJava利用のプロジェクトが縮小傾向にある、って事だ。って事はJavaのオープンソース系のフリーなツールがどんどん減っていくだろう、と言う事になる。と言う事は「それらを利用する」事がムズくなっていく。
まぁ、すぐさまどーにかなる、ってワケではないだろうけど、現時点だと、Microsoftがオープンソース陣営に近づいてるトコもあって、Javaがどーの、とかやるのならC#に賭けた方がエエんちゃうん?とかちと思ってる。
(Java履修済みなら「よりキレイなJava・笑」C#の習得は比較的ラクだろうし)
Javaの立ち位置ってCobolみたいになってくんじゃねぇのかなぁ・・・「保守」は必要だけど、それでの新規プロジェクトは出ない、的な。
この辺のゴタゴタとJavaScriptは無縁の立場にいるんで、どっちか選べ、って言われたらJavaScriptかなぁ、と思います。
言語の基本設計もJavaScriptの方が優秀ではあるんでね。
#2
総合スコア69
投稿2025/07/16 04:17
#1の意見にほとんど同意
JavaとJavaScriptの2個をあえてあげているのであれば、環境構築からモジュールの理解まではやっておけばいいとは思う。もしそれが苦しくてやめてしまうなら、就職後も苦しい思いをするかもしれない。
基本的に将来AWSとかLinuxは残るだろうから、そこら辺の勉強をしたら外しはしないのでは?という感じ。
将来性っていうのはほとんどの人が転職や就職前に考えるものだが、実際入ったあと、つまりエンジニア数百人に聞いても意見自体は割れるものだろうし、そういう見方や視点も有り得るけどもそんなに大事かなというところではあるかもと思う。
#1の回答をよく読んで理解することをお勧めする。
ああ、でもcobolと同じかは分からない。銀行システムの文化があったのとは背景が違うしアップデートもされていくというのが実情だろうというところなので。
ただ、Javaの考えは他の言語や文化に合わない所も多いかと思うので結局JavaScriptの方がおすすめ度は高くなる
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
#3
総合スコア21510
投稿2025/07/16 09:48
編集2025/07/16 10:08プログラミング言語って何処までいってもタダの道具なので
そこからITエンジニアとして積み上げるに従って扱える言語は増えていく
私もPHPしか扱えないPHPerと呼ばれる人種だったけど
JavaScriptから発展したAltJS系、Clojure、後は試しに触ってみたGo言語やNim言語なんかも多少は読み書き出来る
人間必要になれば覚えるもんだからあんまり気にしなくて良い
javaはJava Goldの資格取得済、現在はspringを学習中
javascript、reactは参考書で学習済み(実務レベルの能力はまだないです)
お前それどっちも使うだろ!!!
Java + SpringでWebサイトで扱うHTMLやJSONを吐き出して、
ブラウザでJavaScriptを操って画面表示を変更するという風にバトンタッチする形式。
いやまぁSpringでやってる事をNode.jsに代わりにやらせればJavaScriptだけで完結出来るけど
Java + Springのが実行速度は遥かに速いよ?
折角Javaの読み書きもかなり出来るんだから、
一気通貫でJava + JavaScriptの併用で、ToDo管理出来るWebアプリでも作って転職活動に利用したら?
Java と JavaScript の将来性
前述の通りプログラミング言語なんてただの道具の一つ
例えばWeb業界はわりとまだイケイケな業界かと思うけど、Webサーバーってなんやねん
その本質はHTTPのルールに従ってサーバーマシンを動作させて
リクエストを受け取って、レスポンスを返すだけで良い
JavaでもC言語でもNode.js(JavaScript)でもPHPでも何でもそこは簡単に実現出来る
後はそのWebサーバーを使って訪問者にどんな価値を提供出来るかってだけの話
ニコニコ動画だって社内にC++が得意なITエンジニアが居たからC++でサービス作った
世の中はJava一色だったあの頃にね、結局は情熱ややる気の問題でしかない
流行りのAIも気になるからPythonが良いんじゃない?ってなっても、
別言語からPythonを遠隔操作で利用する方法なんて腐るほどある。
例えばサーバーマシンの奥でPythonでWebサーバーを可動させて、
JavaのプログラムからHTTPアクセスでPythonのWebサーバーに気の利いたリクエストを飛ばしてPythonに働かせて結果を受け取るとかね。
どっちの言語の方が良いんだろ……
ああ、オワコンになったら怖いなぁ、食いっぱぐれるなぁ
どの言語がオワコンになるかなんて分からん、JavaScriptもTypeScriptの登場でいきなりオワコン化の危機に陥ってるし
でもTypeScriptはJavaScriptのマイナーアップデートみたいなもんだから
それを勉強して使いこなせるようになった人間にとってはどうってことはない
そのTypeScriptすら廃れたって、HTTPやデータベースの扱い方という根っこの方をちゃんと理解していれば
どんな言語にだって移住して再度戦える
くよくよ悩んで立ち止まる方がアホなんで
何でも良いから勉強してなんか作ってみよう
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
#4
cametanさん
u2025さん
miyabi-sunさん
返信が遅くなりすみません。
お三方とも、大変有益なアドバイスを頂き有難うございます。
これからの学習・転職活動に役立てます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
#5
総合スコア2074
投稿2025/07/18 02:44
Java はエンタープライズ向け需要は底堅いと考えます。長期サポートの期間ひとつとっても Java は最長9年ですが、例えば Node は 30ヵ月。ベンチャー企業ならサポートなど気にしないところも多いとは思いますが、ある程度の規模の企業になるとそうも言っていられない。
ちなみに AI の普及でどちらが残る言語かという点は、大差ない気はします。
わたしは Java か Javascript かより、業務系か Web系か、SI か事業会社か、フロントかバックエンドか、大規模システムか小規模システムか、といった観点について「あなたはどちらがいいと思うか」で考えた方がいいような気はします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
#7
総合スコア2289
投稿2025/07/20 04:56
javascriptとjavaどちらに重きを置いて転職活動
AIの普及により、これから先どのプログラミング言語が生き残るのか分からず
という問題設定自体がよろしくないと思います。生成AIでコードが書ける時代なので、並にコードが書けるというのはどんどん価値が失われますよね。どの言語が生き残るかではなく、生成AIにより、プログラム言語との接し方が異なるはずです。
可能性があるのは、
- どんな言語でも良いので言語仕様まで全て極めているような人
- 生成AIで賄いきれないところは当面残るのでこう言う人には価値がある。これならJavaだろうがJavaScriptだろうが重宝されますよね。
- 複数の異なる言語パラダイムの言語を理解して使いこなせるような人
- 『達人プログラマー』という本では毎年1言語マスターを推奨されてますね
- 生成AIでコードを書くにしてもどの言語が良いのかまで言語の違いを知り尽くしている人は重宝されると思います
- コーディング専用のプロンプトを極めた人
- プロンプトもある意味プログラミング言語と思います。
- 業務課題から設計に落とし込める人
- プログラマーから離れていきますが、ここはまだ生成AIが弱いところです
今、社会人4年目なんて羨ましい!勉強し放題!
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
#9
総合スコア86398
投稿2025/07/23 16:39
編集2025/07/24 10:34他の方に同意で、JavaScriptとJavaの二択で考えるならJavaScriptですね。
が、JavaScriptしかできませんという人は不要(まあ、何らかの仕事はあるでしょうけど)。
#7のaokikenichiさんの「という問題設定自体がよろしくないと思います」にも賛成です。
「どの言語に重点を置いて学ぶのがおすすめですか?」は十代の学生さんが聞くならありだけど、社会人4年目の人が、前提条件を書かずにあなたのことをほとんど知らない他人に聞く話ではないです。
そもそも4年目ということは1年目から今の仕事をしているのなら3年くらい仕事をしていたと思うのですが、「少し触った経験あり」「学習したが実務経験なし」「学習中」ということは、今までプログラマー以外の仕事だったをプログラマーになりたいということなのでしょうか?あるいはプログラマーだったとすると、Python/Ruby/PHPとかをやっていたのならそう書いてあるだろうから、COBOLとかCとかの分野の業務だったのをウェブ系をやりたいということでしょうか?
↑には、別に回答しなくてもらわなくてもいいですが(2-3行程度で回答されても適切にアドバイスできない)、そういうところから、「どういう仕事に転職したいのか?」「その仕事で活かせる今の業務経験は?」「その仕事に合うスキルを身につけられるだろうか?」をしっかり考えるべきかと思います。#5 68userさん回答の第3段落のあたりのことです。考え済みなら書きましょう。
生成AI耐性という観点ではは、どの言語でもあまりかわらないと思います。今のところマイナーな言語には弱い気がしますが、今AIが弱いからという理由でマイナーな言語をメインで学ぶのはおかしいでしょう。ニーズも少ないはず。
プログラマーという職種だと上位1-2割以外は数年後には厳しい戦いかと思います。
複数言語が出来ることは当然としても、4年目時点で10とかの多数の言語を読み書きできる必要はないと思いますが、業務で必要な時が来れば、経験のなかった言語やフレームワークをスムーズに学習できることは必要でしょうね。例えば、関数型の言語を読み書きできないとしても、関数型プログラミングとはどんなものか程度の知識はあったほうがいい。「原理は分かったので、スムーズに学べるはず」or「考え方が腑に落ちない。学習には時間がかかりそう」くらいの判断はしておくということです。
少し前に、別の方に「プログラマーを目指すのもいいけど、AIとの戦いになるので、設計者を目指すことも考えては?」とアドバイスを書きましたが、まあこれは個人の志向の問題なので、ピンとこないなら勧めません。求められるスキルも異なりますので。
プログラマーの道を行くなら、採用面接時に「あなたは、生成AIに勝てますか?勝てるというならその理由は?」という質問がもし出たら、きちんと説明できますかね?
今時点なら「勝てます。なぜならば、~~」はいろいろ言えそうな気がします。
生成AIにプログラムを書かせるスキルもどれくらいでいいのかはよくわからないです。
書かれたプログラムを理解して間違いを見つけて書き直させるのは、「時間かければ自分で書ける」くらいのスキルが必要そうです。そうじゃなくて、書かれたものを細部まで理解しないまま実行して、結果が期待通りでない場合は、結果をそのままAIに伝えて書き直してもらう程度で、業務で実用的なレベルのものが出来るのか?
というようなことは、探せばレポートがありそうですが、1年後には状況が変わっているでしょうね。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
#11
総合スコア62
投稿2025/08/23 06:33
AI時代における開発スキルの戦略
背景
AIの進化と普及により、プログラミングのあり方は大きく変わっています。特に、レガシーな環境(例: SIerの業務系システムや古いJavaベースのプロジェクト)を除けば、人間が直接コードを書く機会は今後ますます減っていくでしょう。AIを活用して爆速で開発できる人材が、将来的に求められるスキルセットです。この観点から、JavaScriptを学びつつ、AIを使った開発スキルを習得する戦略を推奨します。
Javaの限界と課題
Javaは主に以下の領域で使われていますが、AI時代における選択肢としては限定的です:
- SIerの業務系システム: 金融や物流などのエンタープライズ環境で需要はありますが、レガシーコードや規制の制約が多く、AIを活用するには複雑なプロンプトが必要です。例: 「Java 8で動くSpringアプリに、PCI DSS準拠の監査ログを追加」といった細かい指示が必要。
- Android開発: モバイルアプリ開発で一定の需要はありますが、Kotlinの台頭やFlutterのようなクロスプラットフォーム技術により、Javaの優位性は低下しています。
- 課題: Javaはレガシー環境に強く依存し、モダンな開発(例: サーバーレス、プロトタイピング)ではJavaScriptやPythonに比べ柔軟性が劣る。AIの活用も、プロンプトの複雑さから効率が落ちる。
結論: JavaはエンタープライズやAndroidに特化しすぎており、AIをフル活用するモダンな開発環境では不利。レガシーな現場で働く必要性も、長期的なキャリアでは疑問。
JavaScript+AI活用の推奨理由
AI時代に求められるゼネラリストとして、JavaScriptを学びつつAIを使った開発を習得するのが最適です。理由は以下の通り:
- 市場ニーズ: Web開発(React、Node.js)の需要は非常に高く、スタートアップやテック企業で必須スキル。AIで生成したWebアプリ(例: ECサイト、SNS)を爆速で構築可能。
- AIとの相性: JavaScriptはプロンプトがシンプル(例:
Next.jsでSEO対応のSPAを生成
)で、AIを活用したプロトタイピングが速い。モダンな環境(例: サーバーレス、クラウドネイティブ)で、AIの力を最大限引き出せる。 - 抽象構造の学びやすさ: Webアプリのドメイン(例: 商品管理、ユーザー認証)はシンプルで、抽象構造(例: API設計、状態管理)の基礎を効率的に学べる。例: AIで生成したReactアプリに、Reduxやキャッシュを追加してスケーラビリティを改善。
- レガシー回避: Web系はレガシーコードが少なく、AIを自由に使いやすい。例: 古いjQueryコードでも、AIに「Reactに変換」と指示すれば対応可能。
- 転職でのアピール: AIで生成したWebアプリをGitHubに公開し、「業務課題をAIで爆速解決したゼネラリスト」としてアピール。即戦力として評価されやすい。
具体的なアクション(1年間の学習計画)
社会人4年目として、1年でJavaScript+AI活用スキルを磨き、ゼネラリストとしての市場価値を高めるプラン:
- React+Node.jsを学ぶ(6ヶ月):
- AIを使って、ECサイトやSNSアプリを生成(例:
ExpressでREST APIを生成
)。 - 抽象構造(API設計、状態管理、スケーラビリティ)を意識し、AIの出力を最適化。例: 「キャッシュを追加してレスポンスタイムを20%改善」。
- プロンプトエンジニアリングを練習(例:
クリーンアーキテクチャで実装
、99.9%の可用性を保証
)。
- AIを使って、ECサイトやSNSアプリを生成(例:
- ポートフォリオ作成(3ヶ月):
- AIで生成したアプリ(例: ReactのToDoアプリ、Node.jsのAPI)をGitHubに公開。
- ブログで「業務課題をどう抽象化し、AIでどう解決したか」を解説。例: 「AIで生成したReactアプリに、Reduxで状態管理を追加してパフォーマンス改善」。
- 面接で「AIを活用して業務課題を解決した経験」をアピール。
- 業界選びと応用(3ヶ月):
- Web系/スタートアップ: JavaScriptで即戦力に。モダン環境でAIをフル活用し、ゼネラリストとして輝く。
- エンタープライズ(必要なら): JavaScriptの基礎を固めた後、興味があればJava(Spring Boot)をサブで学び、複雑なドメインで抽象構造を深掘り。
- レガシー現場は避け、クラウドネイティブやサーバーレス環境を優先。
なぜゼネラリスト+AI活用か
- スペシャリストの限界: AIがコーディング、運用、保守、スケーラビリティをカバーするため、特定の言語や技術の深い知識(例: JVMチューニング、JavaScriptのイベントループ)は不要。局所的な問題はAIやGoogleで都度解決可能。
- ゼネラリストの強み: 抽象構造(アーキテクチャ、DDD、非機能要件)を理解し、AIに具象を任せる。例: 「在庫管理の集約ルートを設計し、AIでAPIを生成」。
- AIの進化: 言語やハードウェアの進化(例: クラウドのスケーラビリティ、TypeScriptの型安全性)により、AIを活用した爆速開発が主流に。ゼネラリストは、業務課題を抽象化し、AIに最適な指示を出す役割を担う。
結論
AI時代では、Javaのようなレガシー環境に依存した言語より、JavaScriptを学びつつAIを活用した開発スキルを磨くのが最適です。Web系のモダン環境で、抽象構造の基礎を効率的に学び、AIで爆速開発を実現。レガシー現場を避け、スタートアップやテック企業でゼネラリストとして市場価値を最大化しましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。