PHPエンジニアはフレームワークが使えないと転職が難しい?(WEB開発)

転職

ガラパゴス氷河期中年エンジニアの転職は茨の道

トイレで踏ん張っている最中に解雇通告されたおじさん。

現在、泣きながら転職活動中です。
IT系ならスキルあるだろうし転職できるでしょ?とお思いの方もいらっしゃるかもしれませんが、そんなことはありません

おじさんはPHPというプログラム言語をメインに他にHTML、CSS、Javascriptを使って10年以上仕事をしていました。PHPはWEB系ではメジャーな言語でこのブログ(WordPress)もPHPで作られています。

PHPで申し込みやアンケートフォームのような小規模のものからECサイト、顧客の会員管理システムや売り上げ管理システムを作成していました。

おじさんのスキルはガラパゴス化していた

ガラパゴス化とは?

孤立した環境(日本市場)で製品やサービスの最適化が著しく進行すると、外部(外国)の製品との互換性を失い孤立して取り残されるだけでなく、適応性(汎用性)と生存能力(低価格)の高い製品や技術が外部から導入されると、最終的に淘汰される危険に陥る(wikiから)

おじさんはフルスクラッチというプログラムやデータベースを1から準備しシステムを構築していく手法で仕事をしていました。自社開発をしている会社だったし10年前はそれでも良かったんですがね・・。

自分の部署は上司一人、自分一人というところで大体お客さんから上司が要望を聞いてきてこういうシステムをいつまでに作成、やり方は個人(おじさん)に任せるというある意味フリーダムな環境でした。
そのような孤立した環境で仕事をしていて、いざ外に出てみると現在の開発環境はガラッと変わっていたのです・・。

フレームワークが使えないと仕事が無い!

職探しをしてわかったことは現在の開発はフレームワークを使用したものが主流となっていました。

プログラム開発におけるフレームワークとは?

ソフトウェアフレームワーク(英: software framework)とは、プログラミングにおいて、アプリケーションソフトウェア等の実装に必要となる一般的な機能や定型コードを、ライブラリとしてあらかじめ用意したものである。
(wikiから)

簡単に言うとフレームワークでは、開発手法がルール化されていてそのルールに沿ってシステム構築ができるのです。

システム開発でフレームワークを使うメリット

・予め用意された部品を組み込むことで機能追加ができ(1から作る必要がない)、迅速にシステム構築ができる。
ベテランも初心者も組み込む部品は共通なので、機能の完成度のバラつきが抑えられる
多人数で開発する場合、フレームワークの共通のルールに沿って開発するので開発ルールを統一しやすく保守もしやすい
など

転職の面接を受けた時、

セキュリティに関する機能とか重要な部分は既に性能が保障されているフレームワークの機能を使った方が絶対良い。手間を考えると1から作るのはありえない。

と言われ、そうですよね・・と今さらながら思った次第です。

デメリット

型ができてしまっていることで開発の柔軟性にやや欠ける
環境構築がややめんどくさい
一つの言語に多くフレームワークが存在しどれを勉強したら良いか迷う
など

一つの言語に多くフレームワークが存在しどれを勉強したら良いか迷う←これ
おじさんの使うPHPはメジャーなフレームワークだけでもLaravel、Cake PHP、ZendFramework、Symfony、FuelPHPと複数存在します。
で、流行廃りもあるので勉強したフレームワークが廃れちゃったりすると悲しいことに。こういうところがIT系はずっと勉強と言われる所以の一つだったりするんですが。

おじさんもクビになった会社で勉強がてらフレームワークを使ってシステム構築の提案をしたことがあるんですが、却下されました。理由はフレームワークで開発しても周りに使える人間がいないので作った人間しか後々メンテナンスできないから。
そっかーとそのままにしておいたツケが今になって回ってくることに・・。

(結論)WEB開発するならフレームワークは勉強するべき!

どの言語でも使えるに越したことはないですが、少なくともPHPで仕事をしたいならフレームワーク習得は必須だと感じています。
PHPなら使用フレームワークはLaravelが多数をしめつつあるので、これからPHP開発の道に進みたい方はまずLaravelを勉強するのが良いかと。

フリーランスの参画案件や求人を見てみるとわかりますが、(2024年現在)Laravelが使えると選択の幅がぐんと広がりますよ。

おじさんも勉強中なので機会があったらこのブログでアウトプットしていきたい所存です。

コメント

タイトルとURLをコピーしました