PHPは汎用性の高いプログラミング言語として知られており、たくさんのwebサイトで使われています。PHPを用いて構築されたWebサイトは、世界中で2億5000万を超えるとも言われているほどです。
エンジニアとしてwebサービスを開発する際には、必ずと言っていいほどWebフレームワークを使用します。PHPにおけるWebフレームワークの中でも、最近注目を浴びているのがLaravel(ララベル)です。今回の記事では、Laravelを扱うことができると、エンジニアとしてどんな案件に参画することができのかについて説明していきます。
Contents
Laravelとは
Laravelは2011年に初めてリリースされました。他のPHPフレームワークと比較するとまだまだ誕生してからの歴史は浅いですが、爆発的に普及していきました。現在では、世界中の多くのエンジニアに使用されています。その理由は、下記のような特徴を持っているためです。
初めから多くの機能が用意されている
LaravelにはCLIでの入力に対応するためにArtisanコマンドが用意されています。これはRuby on Railsでいうところのrailsコマンドにあたるもので、webアプリケーション作成において必要な作業を実行することができます。他のPHPフレームワークにも同様にCLI操作用のコマンドが用意されていますが、Laravelは他のフレームワークと比較しても初めから実装されている機能が多くあります。
ディレクトリ構成が自由
Laravelは、PHPのソースコードを配置するディレクトリ構成を自由に決めることができます。
Webサイトを構築していく際には、インストール直後の初期ディレクトリ構成のままで開発を進めることになると思います。ただ、開発していく中でディレクトリ構成を変更したり、独自のライブラリクラスを追加したりといった場面が出てきます。
Laravelはディレクトリ構成が自由に組めるように設計されているフレームワークであるため、開発者の希望に合わせて変更することができます。
ファイルアップロード処理が簡単
Laravelではファイルストレージ用のインターフェースが公式で用意されていて、数行のコードのみでアップロード処理を実装できます。
最近ではローカルディスクへの保存だけでなく、Amazon S3などのクラウドストレージを使用するケースも一般的になっています。Laravelであれば、パラメーターとプラグインによって保存先をクラウドストレージに指定することもできます。
関連ソフトが充実している
Laravelには、HomesteadやVagrantといった関連ソフトが充実しています。これらはLaravelが動作する開発環境を簡単に構築するために使われます。
他にも使用するライブラリの依存関係管理ツールである「Composer」、といったエンジニアのWebアプリケーション開発を手助けしてくれるソフトが揃っています。
以上のような特徴を持っており、webアプリケーションの開発を簡単に進めることができる点が評価されているのです。
Laravel案件の内容とは
Laravelを扱えるエンジニアはどんな案件に参画できるのかを見ていきましょう。
サーバサイドの開発で使用されるケースがほとんどです。
例を挙げると
- マッチングサービス新規開発
- SNS分析ツール開発
- タブレットオーダーシステム開発
- コミュニティサイト改修
- ゲームのサーバサイド開発
案件の種類は幅広いものの、BtoC向けに提供されるWebアプリケーションの開発がメインです。
実際にLaravelが使用されているサービス例を見てみると、飲食店の口コミサイトとして有名な「ぐるなび」はLaravelを利用して開発されています。公式ブログでぐるなびエンジニアの奮闘記が描かれています。興味があれば読んでみてください。
PHP開発案件の数としては、CakePHPに次いで多くなっています。現在のところ、日本ではCakePHPがもっとも知名度が高く案件数ももっとも多いですが、それに次いで多いため十分に数はあります。
Laravel案件の将来性はあるの?
PHPフレームワークの中でも、現在最も勢いがあるのがLaravelです。フレームワークとしての登場自体は、2011年と比較的新しいですが海外を中心にして普及してきています。PHPにフレームワークには、
- 処理速度を重視したもの
- 開発速度を重視したもの
- 柔軟性を重視したもの
とそれぞれ個性的な特徴をもっているものが多く存在します。
Laravelは、後発である利点を生かして、最新の技術や仕組みをバランスよく取り入れています。その点からも、今後さらに優秀なフレームワークが出てこない限りは活躍の場を広げていくでしょう。ただ、エンジニアとして今後長く活躍していたくためには、新しいものを柔軟に取り入れる姿勢も必要になります。そのことは認識しておきましょう。
Laravelエンジニアの単価相場は?
実際にLaravelの案件ではどの程度の単価が設定されているのか見てみましょう。
正社員だけでなく、フリーランスとして案件に参画する場合にも経験年数は気にされます。PHPを用いた開発経験が長ければ長いほど、エンジニアとしての評価が上がるために単価も上昇していきます。具体的には下記の通りです。
- 2~3年 50万~75万
- 4年以上 60万~90万
同じ2~3年の経験だった場合でも、案件によっては20万円以上の単価差があります。経験に加えてどういったスキルを持っているのかも見られているからです。
Laravel案件で稼ぐには
Laravelの案件に関しては、どういったスキルを持っていれば高単価で案件を受けることができるのでしょうか。具体的に見ていきましょう。
マネジメントスキル
Laravel案件の中には、100万以上の単価が提示されているものもあります。そういった案件では必ず求められるスキルとしてリーダーとして人をマネジメントする力があります。
企業がリリースするWebアプリケーションを開発しようとなると、当然1人だけで開発する場面は多くありません。チームを組んで開発にあたるケースがほとんどです。そこで、他のエンジニアとコミュニケーションを取りながら仕事を進められるエンジニアは需要が高いのです。
GitHub活用スキル
案件を見ていく中で、Laravel案件で求められる経験の中には下記のような要件があります。
- GitHubを用いたチーム開発の実務経験
- GitHub等でのソース公開経験
このようにGitHubを使用できることが求められているものが多くあります。
Githubは開発者同士が互いにソースコードを共有しあって業務の効率化を図るためのツールです。現在では個人レベルだけでなく、多くの企業で導入されているサービスです。
Laravelを扱う上では、開発したコードを管理するためにGitHubを扱えるスキルを持っていることでより多くの案件に参画できる可能性が広がります。
Laravelの最新バージョンを扱えるスキル
Laravelは登場から何度もバージョンアップを繰り返しています。特にバージョン4.2からバージョン5.0では変更点が多く、古いバージョンしか使ったことがないエンジニアからすると戸惑う部分もあるほどです。
そのため、Laravelを扱ったことがあると言っても、最新バージョンを扱えるかどうかでエンジニアの評価は変わってきます。古いバージョンしか触ったことがないエンジニアでは参画できる案件も限られてしまうのです。そのため、高い単価で仕事を受けたいのなら最新バージョンを扱えることが必要になります。
データベースの理解
webアプリケーションの開発において、データベースに関する知識を持っていることが必要になります。特にデータベースのなかでも、MySQLを扱えることが求められるケースが多いです。
大量のデータ処理を必要とするWebアプリケーション開発において、特にデータベースは絶対に必要です。そのため、Laravelと合わせてデータベースを理解していること強みにすることができます。
ただデータベースに関する知識をもっているだけでなく、実務で使った経験を持っていて十分に使いこなせるかどうかも重要になるのです。
利用者の声
他社にない独自の案件を持っている印象でした!
【エミリーエンジニア】は他社が持っていない案件を持っているので、すごく嬉しかったです。他社が手の届かない独自の案件を持っている印象でした。
ご紹介いただいた案件は、提示した4つの条件を全てクリアしていたのですが、他社エージェントに紹介いただいた案件の方が、月額報酬が高かったのではじめは迷いました。 ただ、担当者の方に色々と調整していただき、最終的には月額報酬を上げていただけましたし、「自分がやりたいこと」そして「これまでのスキルが生かせる」内容だったので、迷う要素がなくなりました(笑)。
まとめ
今回はPHPフレームワークの中でも、現状で最も勢いのあるLaravelに関して取り上げました。
エンジニアの案件としての需要も高く、今後も案件数が増えていくことが期待できます。今のうちからスキルと経験を積んでおくことは、大きな価値があります。もし、まだLaravelを習得していないエンジニアであれば、フリーランスとして長く活躍していくためにも、Laravelに一度目を向けてみましょう。
Laravelに限らず、今後のフリーランスとしてのキャリアや市場ニーズなどを詳しく知りたい方は、フリーランスエンジニア専門のエージェントに相談すると良いでしょう。
あなたに寄り添い、キャリアプランを一緒に考えながら案件をお探しします!
まずは下記より会員登録を!