経歴10年以上のフリーランスエンジニアが今まで経験したプロジェクト

フリーランス
スポンサーリンク

こんにちは、ice_soiです!
フリーランスエンジニアをしています。

エンジニアになってかれこれ10年以上になりますが、今までいろいろなプロジェクトでいろいろな言語を使ってきました。そこで備忘もかねて残しておこうと思い記事にまとめる事にしました!
僕はSIer寄りの開発が多かったのでJavaJavaScriptPHPVB.NETC#を使ってきました。
今回はそれぞれどんなシステム開発のプロジェクトで使われていたかを解説していくので、この記事が参考になればと思います!

Javaを使ったプロジェクト

Javaはオブジェクト指向の言語で、Webアプリケーション開発、モバイルアプリケーション開発、エンタープライズアプリケーション開発などに使用されます。似ている言語としては同じJavaVMを使ったKotlinなどがあります。
最近では「Minecraft」やAndroidの開発で使われていますが、個人的にはSIerの大規模プロジェクト開発で使われている印象が強いです。
僕が以前参画したのは金融系のWEBシステム開発プロジェクトでリリースするのに数年かかるようなプロジェクトで、その時のサーバサイドの言語がJavaでした。
そのプロジェクトはきっちり設計書を書いて進めていったので、破綻しやすいクラスなどの機能も有効に使えていたと思います。ただ、バージョンの兼ね合いやコーディング規約などもありラムダ式など比較的新しい書き方はできませんでした。

PHPを使ったプロジェクト

PHPはサーバーサイドのスクリプト言語で、Webアプリケーション開発に使用されます。動的なWebページを作成するために使用されます。似たような開発で使われる言語としてはRuby、Pythonがあります。
PHPだけで使うのではなく、LaravelcakePHPなどのフレームワークを使って開発することになるかと思います。構築しやすく書きやすいので、サクッと立ち上げる小規模から中規模のプロジェクトで使われている印象が強いです。旅行系のWEBシステム開発プロジェクトで使われていました。
まずは立ち上げてスケールしていくタイプのプロジェクトではよくあると思いますが、ちゃんと考えないとつぎはぎだらけになりますし、なりました。笑
また、そのプロジェクトはコーディング規約がガチガチではなかったので、いろいろな方法でリファクタリングしていって保守性がよくなっていくという実感を得られたというのは良い経験でした。

VB.NETを使ったプロジェクト

VB.NETはMicrosoft社が開発した、.NET Framework上で動作する言語です。Windowsアプリケーション開発、Webアプリケーション開発などに使用されます。コードの書き方は違いますが、同じ.NET Framework上で動作するので基本的にはC#と同じことができます。
Windows上で動くアプリケーション開発で使われているので古くからあるシステムでよく使われています。言語仕様はそんなに難しくはないのですが、大規模なシステムで使われていることが多く、実装にかかわる人が多いためソースコードが汚くなりがちな印象です。
僕が使ったのは医療系のデスクトップアプリケーション開発プロジェクトやWEBアプリケーション開発プロジェクトでした。
システムの稼働期間が長いとソースコードが「秘伝のたれになりがちです。そのため、1行修正するのに1日かかったりと既存箇所の修正がとても大変でした。代わりに、新規に機能開発する際はすでに似たような修正や参考にできる機能などがあったため比較的作りやすかったです。

C#を使ったプロジェクト

C#はMicrosoft社が開発した、.NET Framework上で動作するオブジェクト指向の言語です。Windowsアプリケーション開発、Webアプリケーション開発などに使用されます。
コードの書き方はJavaと似ていますが、同じ.NET Framework上で動作するので基本的にはVB.NETと同じことができます。
こちらもVB.NETと同じようにWindows上で動くアプリケーション開発で使われていますが、Xamarinでスマホ開発やUnityでゲーム開発などでも使われています。
僕が使ったのは医療系のデスクトップアプリケーションの開発プロジェクトでした。この時はそこまで荒れたりはしないプロジェクトでした。

JavaScriptを使ったプロジェクト

JavaScriptは、Webブラウザ上で動作するクライアントサイドのスクリプト言語です。Webページに動きやインタラクションを追加するために使用されます。
WEBシステム開発でサーバサイドの言語はいろいろ選択肢はありますが、フロントエンドでは絶対に使うことになる言語だと思います。
以前はjQueryでゴリゴリ書いていましたが、最近ではReactやVue.jsといったモダンなフレームワークも増えてきたのでそちらを使って開発することが多いです。
今まで開発してきたほぼすべてのWEBシステム開発で使っていました。
画面は一番ユーザーに近い部分なので、仕様変更やバグなどがどうしても多かったですね。その割にはプロジェクトにJavaScriptが使える人が少なかったりすることが多かったので、フロントエンドとバックエンド両方できるポジションは割と重宝?されることが多かったです。あとは、言語の進化が早く覚える事が多いのと、ブラウザ(おもにInternet〇xplorer)によっては動かないというのはよくありました。

今までのまとめ

ここまで経験した言語とプロジェクトについてあげてきました。
僕はSIer寄りのWEBシステム開発が多かったためこんな経歴ですが、スタートアップ系とかWEB系の会社だとまた変わってくると思います。また、開発するシステムがスマホアプリやAI系、制御系とかのプロジェクトでも使う言語がswiftやPython、C・C++などに変わってきたりすると思います。
今回は経験を棚卸する意味合いもかねて記事にしましたが、自分がやってきた事を可視化できるというのもあってよかったです。
今回の記事が何かの参考になれば幸いです!

最後までお読みいただきありがとうございました。

スポンサーリンク