はてなキーワード: バックエンドとは
自分でいうのもなんだがかなりトップの方でやってるがその辺の会社のシステムレベルだと本来バックエンドの俺とかが片手間に書いてるで
世界的にでかいサービスとかは別としてその辺のある程度でかいくらいの会社はUI専攻しましたみたいな人はおそらくいない(からあの始末)
AI(特に生成AI)の急速な進化により、「フロントエンドエンジニアが不要になる」「仕事がなくなる」という言説は、近年非常に多く聞かれます。
結論から言うと、「単純なコーディングやボイラープレート(定型文)を書く仕事は消えるが、フロントエンドエンジニア自体は消えず、役割がより高度な領域へ変化・進化する」というのが、多くの専門家や現役エンジニアの共通認識です。
具体的な状況は以下の通りです。
AIは、従来のコーディングプロセスを劇的に変化させています。
定型業務の自動化: UIデザインからHTML/CSS/コンポーネントコード(React, Vue.jsなど)への変換はAIが非常に得意としており、人間がゼロからコードを書く必要がなくなっています。
API連携・テスト生成: API連携のパターンやテストコード、デバッグ作業もAIで効率化されている。
「Vibe Coding(フィーリングコーディング)」: 曖昧な指示からアプリのプロトタイプを爆速で作れてしまうため、初期段階のフロントエンド実装がいらなくなる。
AIは「実装」を高速化しますが、「設計・判断・最適化」は依然として人間に依存します。
要件の解釈と複雑な設計: 曖昧な顧客の要件から正しいUI/UXを設計し、パフォーマンスを最大化する構造を考える能力は人間にしか難しい。
10%の仕上げ(ポーリッシュ): AIが生成した90%のコードをレビューし、修正・最適化して実用化する「最後の10%」の作業は人間が担当する。
アクセシビリティ・セキュリティ: アクセシビリティの確保やセキュリティのチェック、パフォーマンスの微調整など、人間中心の細やかな対応が求められる。
AIツールの活用能力: AIを道具として使いこなし、開発速度を10倍、100倍にする「AI駆動型」エンジニアの需要が高まっている。
AI時代には、単なる「コーダー」ではなく、以下の視点を持つエンジニアが生き残ります。
フルスタック化・UI/UXへの進化: フロントエンドの知識だけでなく、バックエンドやUI/UXデザインまで理解し、ビジネス全体を見渡せる人材。
AI駆動開発の習得: CopilotやCursorなどを駆使して、開発プロセスを自動化・効率化する。
深い専門性の追求: AIには代替しづらい、Web技術の深い知識や、特定フレームワークへの高度な熟練度を高める。
つまり、AIはフロントエンドエンジニアの「敵」ではなく、「面倒な作業を奪ってくれる強力なツール」となり、人間のエンジニアはよりクリエイティブな課題解決に集中できるようになると考えられています。
CLAUDE.md や rules / skills みたいな形で、重要なコーディングルールはあらかじめかなり固めておく。
たとえば repository 層や Entity 層は具体的にどう書くのか、テストケースはどういう書き方をして、どういう観点で項目を洗い出すのか、みたいな AI への指示は最初から用意しておく。
あと、linter や ArchUnit、dependency-cruiser みたいなアーキテクチャ制約も、自分なりの定石を持っておく。
割と過剰なレベルでガチガチに固める感じで、アーキテクチャルールも「◯◯は XXX に依存できない」みたいなブラックリスト式じゃなくて、「◯◯は XXX だけに依存できる」みたいなホワイトリスト式の方が良いと思っている。
ts 前提だと eslint や tsconfig は一番厳しい水準に設定する、流石にきつい部分でてきたらそこだけ緩める、という運用
おすすめなのは、何かしらの小規模案件や個人開発アプリを1つオーバーエンジニアリング上等でガチガチ構成で作っておく。
そこで出てきた linter 設定やプロンプト設定を、別案件に横展開する感じ。
正直、ガチガチすぎると MVP とかレベルだとコード量は増えるけど、メンテする前提の案件ならバイブコーディング時代だと普通にペイすると感じている。
アイディアを思いついたら、AI と壁打ちしながら仕様を洗い出していく。
手書きでドメイン図を書いて、それを写メ撮って画像認識で仕様整理、みたいなのも割とアリだと思っている。
どういう画面があって、どういう入力項目や表示項目が存在するか、バックエンドはどういうエンドポイントが必要か、この辺りは最初に一通り洗い出しておく。
それに加えて、ユーザーが初めてトップページを開いてから登録・ログインして実際にサービスを一通り使うまで、みたいな流れをそのまま Playwright のシナリオテストに落とせそうな形で何パターンか仕様書にしておく。
フロントエンドで、DDD における集約みたいな概念がそのまま当てはまらない領域についても、設計時点で洗い出せているなら Entity 的なものやドメインサービス的なロジック用のレイヤを作って、ドメインオブジェクトとして実装していく。
最初に作った基本設計をベースに、◯◯Entity、XXEntity、△△Entity……を作るためのプランとチェックリスト形式の TODO を 1つの md ファイルに吐き出してもらう。
フェーズごとにフォーマッタ、linter、アーキテクチャルールなど一括実行したコマンド実行させて失敗してたら成功するまで修正繰り返させる。
ある程度わかりやすい単位で AI に依頼する感じで、出来上がったコードをレビューする前提なので、実装プランの md 自体はよほど分かりやすいツッコミどころがない限り細かくレビューしない。
mdのフォーマットは skills 側で事前に用意しておく。
フロントエンド用、バックエンド用の両方でドメイン層のファイルを作る。
当然、足りないロジックは後から絶対に出てくるけど、最初から完璧は目指さない。
TODO 一覧の中から自分の認知負荷が許す単位で「チェックリストのここからここまで実装して」と指示を出し、実装が終わったら TODO 項目のチェック状態を更新してもらう、mdファイルもコミットに含める。
コミット前にはlint ルールを無効化していないか、意図通りの実装になっているかは git diff の差分で必ず確認する。
git worktree を使うことが多い。
よくやるのはフロントエンドの画面モック作成とバックエンド実装の2並列で行う。
実装プランを考えてもらうときは「◯◯画面を実装プラン考えて」くらいの単位で依頼する。
実装プランの md ファイルを作るときのプロンプトには、基本設計の〇〇画面の項目一覧をベースに、◯◯のアイテムコンポーネント、リストコンポーネント、◯◯のボタンコンポーネント、Information コンポーネント、外部通信用の ◯◯Gateway を実装する、◯◯コンポーネントは既に ◯◯ 機能で実装してあるからそれを使って、◯◯は処理が膨らみそうだからドメインサービスで実装して、みたいな感じで頭の中のふんわりしたイメージを伝える。
バックエンドも同様で、◯◯のエンドポイントを作って、Gateway がこれこれ必要だから実装して、これはインターフェースと実装分けてね、Entityへの変換処理は関数分けて、◯◯の処理は Usecase 層で、◯◯の処理はドメイン層で、Usecase が膨らみそうだから ◯◯ の処理は独立したクラスにして、あ、似たようなのが ◯◯ 機能にあるからそれを参考にして、くらいの粒度で指示を出す。
フロントエンドの実装を待っている間に、バックエンドのプランを考えたり、タスク粒度を調整したり、リファクタリングプランを考えたりする、またバックエンドのAI待ち時間はフロントエンドのことをする。
フロントエンドオンリーの実装とかで作業が競合するリスクあるときは並列作業しない。
チェックリスト更新が終わるごとに差分を確認して、問題なければコミットメッセージを提案してもらってコミットする。
細切れにするコストよりも、レビューする人間の認知不可が許すレベルであればある程度まとまった単位でレビューして実装速度を優先する派。
テストは、ある程度実装が進んでリファクタリングが辛くなってきたタイミングで作ることが多い。
カバレッジやミューテーションテストなど、定量的にテストを評価できる仕組みは導入する。
バックエンド側のテスト実装は正直かなり楽で、行数や認知的複雑度を厳しく制限して単一責務の原則を守って実装しておけば、AI がかなり高精度なテストを出してくれる。
これもテストファイル実装プランを作ってもらって「ここからここまでのテスト20ファイルを実装してね」をレビュー挟んで繰り返す感じ、例えばミューテーションテストのkill率100%ならそんなに詳しくは見ない。
フロントエンドはテストの定量指標での評価が難しいので、そこはその分レビューを頑張るしかない。
自分はこんな感じでやっている。
感覚としては、優秀だけどシステムのアーキテクチャ全体の責務を負ったことはない経験不足の2年目やSESの部下を扱うEMに近いのかなぁ。
周りの話を聞いていると、もっともっと AI に自律的にいろいろやらせているようにも聞こえる。
これでも 1日1人で数万行レベルはコードを書けてるので、AIない時代に比べると数ヶ月分の成果を1日とかで出してることになるが、もっと本気出せるのかなぁ。
「全機能分プラン作ってね!そこから良い感じの粒度でコミットも自分でやってね!」みたいな指示を良い感じに出せたとしても、指示がでかすぎると、脆弱性盛々になったり、lint エラーループでパニクって linter オフにし始めたり、テスト通すためにエラー握りつぶして assertTrue(true) し始めたりする。
それは流石に許容できないレベルじゃない?が紛れ込むリスクが上がりすぎるんじゃないかなぁ。と思ってるんだがどうだろうか。。。
あとツールはあんま入れてないねkiroとかspec-kitとか、ガチガチ細切れで仕様書作るメリットもあんま感じなかった。
mcpもserenaくらいしかいれてないや、トークン節約してレートリミットの猶予伸ばした方が結局開発早くなるかなって。
いろいろ入れた方がいいんだろうか。
完全にオレオレでこんな感じでやっているんだけど、みんなspec駆動開発というものをどんな感じで、具体的にどうやっているのかが知りたい。
とにかく使えない。アスペの癖に低IQのコミュ障で、高校時代から個人開発をしつつココナラとかクラウドワークスでフリーランス活動に取り組んでたらしいのだが、それがどちらも7年も取り組んでおいて鳴かず飛ばずで法人すら立ってない事実を棚に上げてポートフォリオに書いてきやがった。
まずその時点で不安だったが、実際に使ってみれば一般的なサーバー管理、バックエンド、フロントエンド、ハードウェア、統計や計算機科学などどれもこれも一見できるように見えて理解が浅い。よく言えば広く浅い知識を持っていると言えるが、要は器用貧乏でまともに経験値がないということだ。AWSの資格すら取っちゃいない。
そんでもって学生時代にめぼしい経験がない。数学を幼少期から極めていたらしく(数IIIを小6でコンプしたというのは素直に驚いた)新しいアルゴリズムを論文に書いて某学会に通したことがあるらしいが、実績と呼べるのはそれくらいで数オリや競プロ、CTFの優勝歴などもない。本当に何の実績もない。大学生は大人なんだからIT目指すなら一つくらい社会に爪痕を残すようなとてつもない偉業をなして当然だろ、何のために大学行ったのか
自分の力と頭で修羅場を乗り越えて何かを為した経験もないのでとにかく子供じみていて扱いに困る。一見口調や語彙は大人びているように見えて忍耐力もコミュ力も何もないから始末に負えない。今どきZ世代は大人びてるんだからIT目指す新卒にもなれば普通少年ジャンプの主役くらいのスペックあって当然なのに。
そんでもって全能感にまみれていて、まるで相手が子供じみているかのように演出する能力だけは超一流。人様に物事を都合よく勘違いさせる能力は使い所を間違えなければ役に立つんだか立たないんだか。
マジで人様の前に立つカリスマ性も人様を率いる胆力も人様に率いられる根性も図太さもアイデア力も実績も実力も精神力も頭も心も体も顔も何もない無能中の無能中の無能なのでこんな奴を寄越した人事を末代まで呪うつもりだ。
結果の出ない努力は苦労や道楽ですらない。意味のある努力をした俺らがようやく意味のない辛酸も含めて舐めることができる権利を与えられているのに、無駄な努力しかせず時間を浪費した人間はエンジニアになる資格なんてない。それを解っちゃいない人事の奴らはバカしかいない。
半導体チップ設計に必要なオープンソースソフトウェアがなく、億単位のライセンス料を払って契約するしかない。
Cadence、Synopsysという米国企業大手でほぼ寡占。高すぎて一部の大学しか契約していない。
マニュアルも公開されていないのでネットを探しても使い方がわからない。
昔は日本語に翻訳したマニュアルが用意されていたが、今は英語と中国語だけだ。サポートに問い合わせようにも英語しかない。
ラピダスが話題になっているが、設計ソフトが米国から輸出停止になったら設計が出来なくなる。
実際、中国へは輸出停止の騒ぎがあった。(発表後、数日で撤回)
他の問題として、新しい構造やアーキテクチャの半導体を設計しようとしても、ソフトウェアが対応していないと作れない。
凄い装置が出てきてもソフトがないから設計出来ないといったことが起こる。
ソフトに対応してもらった場合、ノウハウなどがソフト会社経由で他社にも渡ることになる。
日本では、ソフトウェアエンジニアがそれなりに居るが、半導体チップ設計用のソフトウェア企業が育たなかった。
なぜだろうか。
以下、AIで調べた結果
中国本土の半導体EDAツールベンダー(2025〜2026年現在の状況に基づく)は、急速に増加しており、すでに70〜120社以上存在すると言われています。
ただし、実用レベル・商用化が進んでいる企業はその中のごく一部に限られます。
現在(2026年時点)で特に注目度・実績が高い、または市場で名前がよく挙がる主要な中国本土EDA企業を以下にまとめます。
(注:華大九天=Empyrean、芯華章=X-Epic、概倫電子=Primariusは除外して記載)
| 分野 | 代表的な企業名(中文 / 英文・略称) | 主な強み・特徴 |
| デジタル検証・シミュレーション | "UniVista / 芯瞳科技 芯華章以外で注目" | 大規模デジタル検証、FPGAプロトタイプ |
| アナログ・ミックスドシグナル | "阿卡思微電子(Arcas DA) Actt(成都模拟电路)" | 形式検証ツール、比較的新しいが技術力高い |
| 射頻・マイクロ波EDA | "九同方微電子(NineCube / Jiutongfang)芯和半导体" | 完全国産RFシリーズを追求 |
| 製造・TCAD・計測系 | "东方晶源(Dongfang Jingyuan)立芯科技" | 計測・光学系、DFM関連 |
| その他全般・新興 | "芯聚能(CoreHedge)芯动时代(CoreInitium)无锡飞谱(Feipu)思尔芯(Smit / 国微思尔芯)" | プロトタイピング、FPGAエミュレーション系 |
中国本土の半導体EDAツールベンダーのうち、特に論理設計(RTL/デジタルフロントエンド)、物理設計(バックエンド)、RTLシミュレーション、エミュレータ、アサーション、フォーマル検証、低消費電力、UVM などのデジタル系・検証系に強い企業を、2026年1月現在の状況に基づいて追加でまとめます。
(前回のリストで挙げた広立微(Semitronix)、Xpeedic などは製造/テスト/DFM/RF寄りなので、ここでは主にデジタル・検証寄りの企業を優先)
| 企業名(中文 / 英文・略称) | 主な強み(デジタル・検証関連) | 現状の注目度・実績 |
| 合见工软(UniVista / Hejian) | "デジタル検証全フロー(RTLシミュレーション + Formal検証 + Emulation + FPGAプロトタイピング + UVM + DFT)国産最大規模のハードウェアエミュレータ(460億ゲート対応)低消費電力対応も進展" | "★★★★★ 2025〜2026年に最も勢いあり。デジタル大チップ検証で200社超の実績。無料トライアル開放で急拡大中" |
| 芯华章(X-Epic / Chipstart) | "高性能RTLシミュレータ(GalaxSim)フォーマル検証(GalaxFV)エミュレーション・インテリジェント検証 UVM/アサーション対応強化" | "★★★★☆ AI駆動検証で差別化。2025年に大規模プロセッサ実績多数" |
| 国微思尔芯(S2C / State Micro S2C) | "FPGAベース高速プロトタイピング エミュレーション系最強クラス 大規模SoC検証" | "★★★★ グローバル500社超顧客。デジタルフロントエンド検証の定番" |
| 若贝电子(Robei) | "可視化ベースのデジタルフロントエンド(RTL設計・シミュレーション)Verilog対応・自動コード生成" | "★★★ 教育・中小規模設計向け強いが、実商用大規模チップでも採用例増加" |
| 鸿芯微纳(Hongxin Weina) | デジタルIC全フロー(論理・物理設計含む)を目指す | "★★★ 国産デジタルプラットフォーム構築中。進捗速い" |
合见工软(UniVista) がデジタル検証全フローで頭一つ抜けている状況(特にエミュレーション容量・フォーマル・UVMの統合力が突出)。アメリカ禁輸強化後の2025年後半から急加速。
芯华章 はAI×検証(特にフォーマル・アサーション自動生成)で差別化。
物理設計はまだ華大九天 がリードするものの、完全な国産デジタルバックエンドは2026年時点でもまだ不足気味(一部ツールは強いが全フロー統合は課題)。
全体として、2026〜2027年 に上記企業がさらに合併・買収を加速させ、「中国版Synopsys/Cadence」の原型が出てくる可能性が非常に高い。
バックエンド開発だと、main.ts とか main.java みたいなエントリポイントで依存ツリーを頑張って構築するか、DIコンテナを使って解決することが結構多いじゃん?
実行時はそれで組んで、テスト時はコンストラクタ経由でモックをDIする、みたいなのが一般的だと思うんだけど。
最近Next.jsを勉強してて、バックエンドと同じ感覚でこれをやろうとしたら、まあややこしい。
ファイル先頭で直接関数を import してそのまま実行してるけど、それって密結合じゃないの? テスタビリティ低くないの?
って思って調べたら、テスト時は vi.mock とか jest.mock とかを使って、モジュールごと無理やり上書きする方法が主流っぽい。
例えば「テスト対象のコンポーネント」と「その孫コンポーネント」が異なるGatewayに依存していた場合、
しかも「サーバーコンポーネント → クライアントコンポーネント」だとPropsで関数(依存)を渡せないから、Context経由でのDIになるっぽいよね?
でもそれだと最上位でDIしたものが最下層のコンポーネントまで全部使えちゃうから、「なんだかなぁ」ってなる。PropsバケツリレーもContextも、どっちもまあまあ面倒くさい。
あとバックエンドだと、こういう「モジュールをグローバルに上書きしてテスト」みたいなのって割とアンチパターン扱いされる文化が強いと思うんだけど、フロントエンド界隈だと「そういうもんだ」って割り切るのが普通なのかな?
みんなはどんな感じで単体テスト書いてるの?
Pythonちょっと勉強してたし、将来はAIエンジニアとしてバリバリ活躍するんだって思ってた。
入社したのは普通のソフトウェア開発会社で、同僚はみんな優しい。
でも…みんなこう言うんだ。
……まあ信じたよ。当初はね。
で、ある日の昼休み。
同僚の一人がふと見せてきたん。
そこにあったのが、Flutterで作ったマルチプラットフォームアプリ。
バックエンドはFirebase Authentication + Firestore。
UIの状態管理はRiverpod。画面遷移制御はGoRouter。
「あーでもこれ遊びで作ってるだけだからw」
しかもスクリーンショット見たらCI/CDがGitHub Actionsで回ってんの。
別の同僚もほぼ同じ。
「休日は何してんの?」って聞いたら「普段ゲームばっかで何もしてないわw」とか言うわけ。
でも昼休憩にそいつモニターを見たらタブに開いてたのがStackOverflowとかRFC 6455だった。
冗談で勉強してんの?って聞いたら「趣味ですw」とか言うわけ。正直引いた。
更に驚いたのが勉強会の存在で、あいつらの「休日何もしてない」は嘘だってことが分かった。。
俺が「休日は何もしてないんでしょ?」って聞くと
「してないしてない、何も〜。あ、でもLT会と、Go言語の勉強会は毎週参加してるかなw」
とか普通に言ってくる。
は??何もしてないって言うのに土曜も日曜も、誰かの書いた技術書読んでんの?
もうこれさ……完全に別の生き物じゃん。
とにかく使えない。アスペの癖に低IQのコミュ障で、高校時代から個人開発をしつつココナラとかクラウドワークスでフリーランス活動に取り組んでたらしいのだが、それがどちらも7年も取り組んでおいて鳴かず飛ばずで法人すら立ってない事実を棚に上げてポートフォリオに書いてきやがった。
まずその時点で不安だったが、実際に使ってみれば一般的なサーバー管理、バックエンド、フロントエンド、ハードウェア、統計や計算機科学などどれもこれも一見できるように見えて理解が浅い。よく言えば広く浅い知識を持っていると言えるが、要は器用貧乏でまともに経験値がないということだ。AWSの資格すら取っちゃいない。
そんでもって学生時代にめぼしい経験がない。数学を幼少期から極めていたらしく(数IIIを小6でコンプしたというのは素直に驚いた)新しいアルゴリズムを論文に書いて某学会に通したことがあるらしいが、実績と呼べるのはそれくらいで数オリや競プロの優勝歴などもない。本当に何の実績もない。大学生は大人なんだからIT目指すなら一つくらい偉業をなして当然だろ、何のために大学行ったのか
自分の力と頭で修羅場を乗り越えて何かを為した経験もないのでとにかく子供じみていて扱いに困る。一見口調や語彙は大人びているように見えて忍耐力もコミュ力も何もないから始末に負えない。今どきZ世代は大人びてるんだからIT目指す新卒にもなれば普通少年ジャンプの主役くらいのスペックあって当然なのに。
そんでもって全能感にまみれていて、まるで相手が子供じみているかのように演出する能力だけは超一流。人様に物事を都合よく勘違いさせる能力は使い所を間違えなければ役に立つんだか立たないんだか。
マジで人様の前に立つカリスマ性も人様を率いる胆力も人様に率いられる根性も図太さもアイデア力も実績も実力も精神力も頭も心も体も顔も何もない無能中の無能中の無能なのでこんな奴を寄越した人事を末代まで呪うつもりだ。
とにかく使えない。アスペの癖に低IQのコミュ障で、高校時代から個人開発をしつつココナラとかクラウドワークスでフリーランスとして稼いでたらしいのだが、それがどちらも7年も取り組んでおいて鳴かず飛ばずで法人すら立ってない事実を棚に上げてポートフォリオに書いてきやがった。
まずその時点で不安だったが、実際に使ってみれば一般的なサーバー管理、バックエンド、フロントエンド、ハードウェア、統計や計算機科学などどれもこれも一見できるように見えて理解が浅い。よく言えば広く浅い知識を持っていると言えるが、要は器用貧乏でまともに経験値がないということだ。AWSの資格すら取っちゃいない。
そんでもって学生時代にめぼしい経験がない。数学を幼少期から極めていたらしく(数IIIを小6でコンプしたというのは素直に驚いた)新しいアルゴリズムを論文に書いて某学会に通したことがあるらしいが、実績と呼べるのはそれくらいで数オリや競プロの優勝歴などもない。本当に何の実績もない。大学生は大人なんだからIT目指すなら一つくらい偉業をなして当然だろ、何のために大学行ったのか
自分の力と頭で修羅場を乗り越えて何かを為した経験もないのでとにかく子供じみていて扱いに困る。一見口調や語彙は大人びているように見えて忍耐力もコミュ力も何もないから始末に負えない。今どきZ世代は大人びてるんだから新卒にもなれば普通少年ジャンプの最終回を終えた主役くらいのスペックあって当然なのに。
そんでもって全能感にまみれていて、まるで相手が子供じみているかのように演出する能力だけは超一流。人様に物事を都合よく勘違いさせる能力は使い所を間違えなければ役に立つんだか立たないんだか。
マジで人様の前に立つカリスマ性も人様を率いる胆力も人様に率いられる根性も図太さもアイデア力も実績も実力も精神力も頭も心も体も顔も何もない無能中の無能中の無能なのでこんな奴を寄越した人事を末代まで呪うつもりだ。
とにかく使えない。アスペの癖に低IQのコミュ障で、高校時代から個人開発をしつつココナラとかクラウドワークスでフリーランス活動に取り組んでたらしいのだが、それがどちらも7年も取り組んでおいて鳴かず飛ばずで法人すら立ってない事実を棚に上げてポートフォリオに書いてきやがった。
まずその時点で不安だったが、実際に使ってみれば一般的なサーバー管理、バックエンド、フロントエンド、ハードウェア、統計や計算機科学などどれもこれも一見できるように見えて理解が浅い。よく言えば広く浅い知識を持っていると言えるが、要は器用貧乏でまともに経験値がないということだ。AWSの資格すら取っちゃいない。
そんでもって学生時代にめぼしい経験がない。数学を幼少期から極めていたらしく(数IIIを小6でコンプしたというのは素直に驚いた)新しいアルゴリズムを論文に書いて某学会に通したことがあるらしいが、実績と呼べるのはそれくらいで数オリや競プロの優勝歴などもない。本当に何の実績もない。大学生は大人なんだからIT目指すなら一つくらい偉業をなして当然だろ、何のために大学行ったのか
自分の力と頭で修羅場を乗り越えて何かを為した経験もないのでとにかく子供じみていて扱いに困る。一見口調や語彙は大人びているように見えて忍耐力もコミュ力も何もないから始末に負えない。今どきZ世代は大人びてるんだから新卒にもなれば普通少年ジャンプの主役くらいのスペックあって当然なのに。
そんでもって全能感にまみれていて、まるで相手が子供じみているかのように演出する能力だけは超一流。人様に物事を都合よく勘違いさせる能力は使い所を間違えなければ役に立つんだか立たないんだか。
マジで人様の前に立つカリスマ性も人様を率いる胆力も人様に率いられる根性も図太さもアイデア力も実績も実力も精神力も頭も心も体も顔も何もない無能中の無能中の無能なのでこんな奴を寄越した人事を末代まで呪うつもりだ。
とにかく使えない。低IQの癖にコミュ障のアスペで、高校時代から個人開発をしつつココナラとかクラウドワークスでフリーランス活動に取り組んでたらしいのだが、それがどちらも7年も取り組んでおいて鳴かず飛ばずである事実を棚に上げてポートフォリオに書いてきやがった。
まずその時点で不安だったが、実際に使ってみれば一般的なサーバー管理、バックエンド、フロントエンド、ハードウェア、統計や計算機科学などどれもこれも一見できるように見えて理解が浅い。よく言えば広く浅い知識を持っていると言えるが、要は器用貧乏でまともに経験値がないということだ。AWSの資格すら取っちゃいない。
そんでもって学生時代にめぼしい経験がない。数学を幼少期から極めていたらしく(数IIIを小6でコンプしたというのは素直に驚いた)新しいアルゴリズムを論文に書いて某学会に通したことがあるらしいが、実績と呼べるのはそれくらいで数オリや競プロの優勝歴などもない。本当に何の実績もない。何のために大学行ったのか
自分の力と頭で修羅場を乗り越えて何かを為した経験もないのでとにかく子供じみていて扱いに困る。一見口調や語彙は大人びているように見えて忍耐力もコミュ力も何もないから始末に負えない。
そんでもって全能感にまみれていて、まるで相手が子供じみているかのように演出する能力だけは超一流。人様に物事を都合よく勘違いさせる能力は使い所を間違えなければ役に立つんだか立たないんだか。
マジで人様の前に立つカリスマ性も人様を率いる胆力も人様に率いられる根性も図太さもアイデア力も実績も実力も精神力も頭も心も体も顔も何もない無能中の無能中の無能なのでこんな奴を寄越した人事を末代まで呪うつもりだ。
とにかく使えない。低IQの癖にコミュ障のアスペで、高校時代から個人開発をしつつココナラとかクラウドワークスでフリーランス活動に取り組んでたらしいのだが、それがどちらも7年も取り組んでおいて鳴かず飛ばずである事実を棚に上げてポートフォリオに書いてきやがった。
まずその時点で不安だったが、実際に使ってみれば一般的なサーバー管理、バックエンド、フロントエンド、ハードウェア、統計や計算機科学などどれもこれも一見できるように見えて理解が浅い。よく言えば広く浅い知識を持っていると言えるが、要は器用貧乏でまともに経験値がないということだ。AWSの資格すら取っちゃいない。
そんでもって学生時代にめぼしい経験がない。数学を幼少期から極めていたらしく(数IIIを小6でコンプしたというのは素直に驚いた)新しいアルゴリズムを論文に書いて某学会に通したことがあるらしいが、実績と呼べるのはそれくらいで数オリや競プロの優勝歴などもない。本当に何の実績もない。何のために大学行ったのか
自分の力と頭で修羅場を乗り越えて何かを為した経験もないのでとにかく子供じみていて扱いに困る。一見口調や語彙は大人びているように見えて忍耐力もコミュ力も何もないから始末に負えない。
そんでもって全能感にまみれていて、まるで相手が子供じみているかのように演出する能力だけは超一流。人様に物事を都合よく勘違いさせる能力は使い所を間違えなければ役に立つんだか立たないんだか。
マジで人様の前に立つカリスマ性も人様を率いる胆力も人様に率いられる根性も図太さもアイデア力も実績も実力も精神力も頭も心も体も顔も何もない無能中の無能中の無能なのでこんな奴を寄越した人事を末代まで呪うつもりだ。
一連のShopify強奪事件によって、BundlerとGemsがruby core teamに還元されたが、ついに管理権限の全権掌握に失敗した。
そもそもrubyとはrubyという言語単体の開発とメンテを司っており、言語仕様は見ているがエコシステム全域を見てるわけではない。Matzですらそうだ。
rubyにおいては、BundlerもGemsも言語の付属品という立ち位置だ。
近年の言語は言語仕様もパッケージ管理システムも全部コアメンテナに権限を委譲する。しかしrubyはそうなっていない、C/C++のように。
bunやrustに馴染んでる人には意味がわからないかもしれないが、往々にしてこんな権限統合失敗事案はOSSのアセットマネジメントにつきものだ。
古くはperlが、そしてその後phpもが、やらかした。web業界は過激なオープン思想の裏で、常に権限の落ち着きどころにリポジトリを悩ませている。
だから自由という名の管理放棄パッケージから、法人格での中央集中管理へとOSSはシフトしてきた。ここ10年でFOSは死んだと言って良い。
ソースコードの開示はサプライチェーンの混入可能性を第三者検証可能にする健全性の証左としてきた。OSSコミッターの高額収入はこの信用性が担保していた。
しかし自由ソフトウェアとは自由の範囲を明示的に境界引きしており、本件では自由の範囲外にBundlerとGemsがあった。
つまり自由とは何であるか政治的に理解してない局面においてOSSコミッターはそれを行使するのに無力であり、実際法人格のプレッシャーに負けた事を証明した。
これは歴史的転換点だと思う。
Matzが間に入らなければ、rubyはメンテコストを捻出できず崩壊する所だった。たまたまMatzという優秀すぎる人間がいたので、どうにか死なずに済んだだけだ。
逆に言えばこの崩壊は真祖Matz以外が止められるものではなく実質、Shopifyの強圧に屈してrubyは死んだのだ。
金がないruby core teamはShopify主導のサプライチェーン混入可能性を否定できない環境が整ったのだ。
日本だとクックパッドやSkebが該当するだろう。未だにruby製バックエンドを使ってる企業はサプライチェーン混入可能性を常に評価してrubyを運用する責務を負った。
どの言語だってその可能性は常に念頭にあるが、この歴史的転換点を観測してしまうと、高すぎるリスクを保有するテック企業として技術力を喧伝してきた信用は底値を叩く。
コンピューターサイエンスの信頼性という文脈で、信用を失うのだ。
複雑なものをシンプルにする能力は、日本のWebサービス、特にインターフェイス設計(APIとUIの両方)において、しばしば課題として指摘される点だと思います。
ユーザー体験(UX)を損なう「使いにくさ」は、単なる実装力の問題ではなく、設計思想と要件定義の段階で、いかに「シンプルさ」を優先できるかにかかっています。
ご指摘の証券会社の例のように、ユーザーのニーズや行動よりも、企業の内部的な都合(例:部門間の連携、既存システムとの兼ね合い、法的な制約の過剰な解釈)が優先され、インターフェイスにそのまま反映されてしまうことがあります。
「銀行口座の同時開設」:これは、サービス提供側の都合で「ついでに登録させてしまおう」という発想、あるいは内部的なプロセスをユーザーに押し付けている典型例かもしれません。ユーザーにとっての最適な体験は、「必要な時に、必要なものだけを、わかりやすい手順で」提供されることです。
国産SNSの例で言われているWeb版実装の難しさは、まさにAPIインターフェイス設計の破綻を示唆している可能性が高いです。
これは、内部のシステムがモノリシック(巨大で密結合な一つの塊)になっており、データやロジックが明確なインターフェイス(API)を介して提供されていないことを意味します。
本来、アプリ版とWeb版は、同じバックエンドロジックとデータに共通のAPIを通じてアクセスするべきです。
それができないということは、アプリ版の実装がアドホック(場当たり的)で、APIではなく内部の構造に深く依存してしまっている証拠かもしれません。
「複雑なごちゃごちゃしたものを作れる能力」はあるという評価は、「機能の足し算」に長けている開発文化を指しているのかもしれません。
新しい要件やリクエストがあるたびに、既存のシステムに「機能を付け加える」ことには長けているが、「本質的でないものを削ぎ落とす」「複雑なものを抽象化して整理する」という「引き算」や「構造化」のスキルが欠けている。
「シンプルさ」とは、単に機能が少ないことではなく、「複雑な内部構造をユーザーから隠蔽し、必要な情報だけを整理して見せる」という高度な抽象化の成果です。
ご意見の通り、日本のWeb系で求められているのは、「複雑なものを実装する能力」のさらに上にある、「複雑なものをシンプルに設計し直す能力」、すなわち「本質を見抜く力」と「構造化・抽象化の思考」なのかもしれません。
例.
質問:
「firebaseの使い方を知りたいんやけど」
ChatGPT回答:
Firebaseとは、Googleが生み出した「バックエンドいらずの全能実験装置」だ。君がコードを書けば書くほど、知らぬ間にクラウドが裏で息をしている。
データベース、認証、ホスティング、ストレージ、全部詰め合わせ。便利すぎて逆に怖い。
まずはnpm install -g firebase-toolsで召喚だ。
ターミナルでfirebase loginを叩くと、ブラウザが勝手に開く。そう、Firebaseは君の“人間的アイデンティティ”を確認しないと力を貸してくれない。まるで神のくせに書類主義だ。
ログインが済んだら、firebase initでプロジェクトを構築する。ここが楽しい部分だ。
「Hosting?」「Functions?」「Firestore?」——次々と聞かれるだろう。まるで契約書の小さい文字を全部読み上げてくる悪魔みたいだ。
迷ったらHostingだけ選べばいい。HTMLを置く用の神殿ができる。
あとはfirebase deploy。それだけで、君のHTMLは空に放たれ、URLが授かる。
たとえば https://君のプロジェクト名.web.app だ。誰でもアクセスできる。つまり、失敗も世界に晒される。実験とは常にリスクを伴うのだよ、君。
Firebaseの裏には“Realtime Database”や“Cloud Firestore”といった可愛い怪物たちが棲んでいる。彼らはJSONで話す、気難しい連中だが、使いこなせば強い味方になる。データを瞬時に共有し、アプリを“生きている”ように動かす。
ただし、一度でも構成を間違えると——全世界の閲覧者にリアルタイムで恥を晒す。それもまた芸術的だと思わないか?
というわけで、君がやることは四つだけだ。
召喚:npm install -g firebase-tools
構築:firebase init
解放:firebase deploy
増田の投稿をChatGPTに聞いたら、次のような答えが返ってきたよ。
----------
この投稿はインパクト重視の論調で書かれていますが、内容にはかなりの誇張と誤解が混ざっています。
確かに「Apps in ChatGPT」のような機能は、ユーザー体験の一部を「チャットUI」に統合する可能性を持っています。しかし、それが「フロントエンドエンジニア=不要」という結論にはなりません。
人間が情報に触れるには、必ず何らかの「インターフェース」が必要です。AIが自動生成しようが、それを心地よく見せ、操作しやすくするための設計原理(アクセシビリティ、情報設計、心理的デザイン)は残ります。AIがHTMLを生成するようになっても、「どのような体験を提供すべきか」を定義するのは依然として人間です。
次に、Apps in ChatGPT=Webの終焉という見方も現実的ではありません。
これは「一部のユーザー行動の置き換え」にすぎません。人々がすべての行動をチャット上で完結させたいとは限らず、ビジュアル的な体験(ゲーム、ECのUI、SNS、動画編集、ダッシュボード操作など)は、テキストUIよりも視覚的UIの方が圧倒的に優れています。Spotifyの例にしても、ChatGPT上で曲を探すことはできても、音楽体験そのものはSpotifyアプリ内のインターフェースで完結したほうが豊かです。
さらに言えば、「AIがUIを描く」時代は「フロントエンドの再定義」の時代です。
Reactコンポーネントを手書きする仕事は減るかもしれませんが、「AIに指示してUIを生成し、それを調整する」役割は残ります。人がHTMLを書かなくても、ユーザー体験を設計する力・AIが生成したUIを検証する力・アクセシビリティやブランド整合性を担保する力が求められるようになります。
一方で、この投稿が指摘している**「構造を設計できる人の重要性」**は確かに的を射ています。
API設計、データスキーマ、セキュリティ、AIと連携するバックエンド構造への理解はますます価値を増します。UIの自動生成が進むほど、裏側の整合性・信頼性を支えるエンジニアリングが中心的になるのは確かです。
要するに、フロントエンドは「消滅」ではなく「変質」していく段階に入っています。コードを書く職種から、AIを使って体験を設計・制御する職種に移行していくというのが、現実的な見立てです。
フロントエンドってサーバーサイドとバックエンド両方に対して対比され得る言葉じゃん?
フロントエンド側って既に言っちゃってる場合もサーバーサイド側っていっちゃおかしいの?
むしろフロントエンド側って言っちゃってサーバーサイドって言っちゃうのは表現が不整合でおかしい気もするんだが。
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 https://anond.hatelabo.jp/20251007184146# -----BEGIN PGP SIGNATURE----- iHUEARYKAB0WIQTEe8eLwpVRSViDKR5wMdsubs4+SAUCaOTgXgAKCRBwMdsubs4+ SD/KAP9QiIrDNPQoCjjjAQS5A9cJLKJS3/bFfGRNvraYtbKm/gD/YTSXD9ds1NJy Z+vLERVC06PzR6rPdSv7GA5Ut7RYTAo= =niLq -----END PGP SIGNATURE-----
この一言に尽きる。
ChatGPTの新機能「Apps in ChatGPT」が登場した瞬間、フロントエンドという職種の地盤は音を立てて崩れた。
これまでは、Webアプリやサービスは「フロントエンドでUIを作り、バックエンドでデータを返す」
という分業構造の上に成り立っていた。
だがApps in ChatGPTは、その構造をぶち壊す。
ChatGPTのチャット画面内でSpotifyを操作し、Zillowで物件を探しEtsyで買い物をする。
あなたが書いてきたReactコンポーネントもボタンもフォームもすべてAIに吸収される。
もはやユーザーはブラウザを必要としない。URLをコピペすることも無くなるだろう。
「このホテル予約して」と言うだけでAIがAPIを呼び、レスポンスをカルーセル形式で提示する。
ReactもNext.jsも「人間が画面を操作する前提」で存在していた。
でもその前提はもう終わった。
AIがデータを直接受け取り、AI自身が人間に見せるUIを自動生成する。
あなたが設計した美しいフォームもAIにとってはただの "action": "submit" という構造情報にすぎない。
Apps in ChatGPT以降の世界では、
これらが新しいUIだ。
だからこれから必要なのは「見た目を作る人」ではなく、AIが読み取れる形式で世界を記述できる人 だ。
バックエンドに戻れ。
Apps in ChatGPTが意味するのは、
今後必要なのは、AIが扱いやすいデータスキーマを定義する力や認証・権限・トランザクションを安全に扱う力やMCPやWeb APIをAIが使いやすい形に整える力だ。
これは警告だ。猶予は短い。
Apps in ChatGPTの登場は、「AIがUIを直接扱い始めた」という歴史的転換点だ。
あなたがフロントにしがみつく間に、AIはすでにあなたの代わりにUIを描いている。
5年後にはブラウザから色んなサイトにアクセスするという行為は一部のマニアだけ行うものになっているだろう。
もう時間はないぞ。急げ
だからそれはミドルをいじってるんじゃなくてバックエンドとフロントエンドのどっちかの開発でいじってるだけだろ
その間をうちがサポートしますよって売られてる商品がミドルウェア
握って出すのがフロント
ミドルウェアっていう言葉を聞き齧った素人はバックとフロントの間にミドルってものがあると思ってしまうけどそれは外から見たものでしかない
そもそもミドルウェアって話はApacheだとかの「ウェブサーバー」の話であってバックエンドの話だしそもそもバックエンドフロントエンドとかいうのが一般的になる前の話であって
今はその辺の「ミドルウェア」はクラウド側に乗ってるし時間軸も違うからバックとフロントの間にミドルとかまるで頓珍漢なんだよね