エンジニアとして働いていて、思ったことがあります。それは、「一言でエンジニアといっても、そのレベルは千差万別」ということです。
PHPでの決済システムの開発案件について
現代の世の中は、溢れる情報社会の中で暮らしています。
ITの発達により直接生活に影響を与えることも多くなってきました。
そんな環境の中でエンジニアの需要も、これまで以上に高まってきています。
私自身フリーランスのシステムエンジニアとして仕事をはじめて、今年で七年目を迎えています。
おかげさまで、継続的に仕事を頂けています。
今は顧客となる複数のクライアント様とやりとりさせて頂いています。
それぞれの案件において、条件面や仕事環境なども異なります。
作業自体は、顧客の現場にて行う案件もありますし、自宅作業場で行う案件もあります。
現在は、顧客先への常駐案件と、自宅での開発案件を平行して行っております。
昨年の稼働率は81%で、ありがたいことに高い稼働率で仕事をさせて頂いています。
開発環境や言語などもクライアントによって様々ですが、今回は特にPHPを採用した開発案件でのお話しを致します。
今回例としてあげるのは実際に私が受けた案件で開発言語としてPHPを利用したウェブシステムの開発となります。
PHPでの決済システムの開発案件についてを見つけたきっかけ
こちらの案件を見つけたきっかけをまずお話しします。
まず開発案件を探す場合には様々な方法がありますが、
現在ではインターネットに案件情報が上がっていますので、ネットから検索して探してみたり
また、開発案件を抱えているエージェントからの斡旋で開発案件を受けることもあります。
上記の方法での受注は私も当然あり、自らネット上で募集している案件を探したり
エージェントからの斡旋を受けることもあります。
エージェントは複数の会社に技術者登録を事前にしておきます。
私の場合は、できるだけ多くのエージェントに出向き登録しています。
また各社の営業の方と、定期的に会って現状報告や空き情報、案件情報など様々な情報交換をします。
今回のPHPの開発案件ですが、市場に出ているオープンな案件ではありません。
知り合いからの依頼によりクライアント企業に出向き、打ち合わせをし、システム内容を提案し
契約後、設計から開発まで担当しました。
今回のPHP案件は、言ってみれば非公開の案件ですが、このような経緯での仕事の依頼もあります。
長年フリーランスで仕事をしているとそれなりにコネクションが構築されることから仕事の依頼へと繋がることもあります。
今回のクライアントは、以前から何度か仕事を頂いていたので、正式な依頼へと繋がったのです。
PHPでの決済システムの開発案件についての内容
具体的案件の内容ですが、クライアントは音楽メディアのコンテンツを制作、販売を行う会社です。
こちらの会社の自社サイト上にて販売されているパッケージ商品の決済システムをPHPにて行うという開発案件でした。
既に販売サイトのほうは存在し、販売ページも簡易なものはありましたが
販売及び決済システムの新規開発でした。
今後のことを踏まえ、より細かな設定を希望したクライアントが新規での決済システムを開発したいことから
今回の依頼となりました。
クライアント企業は、中小企業の為スケジュールは比較的余裕があるなかでやらせて頂きました。
設計から運用開始までは約10か月を要しました。
私は、設計及び開発(コーディング)から本番運用まで一連の作業を行いました。
私はいくつかの言語での開発を経験しておりますが、PHPでの開発経験もいくつかありましたので対応できました。
案件の環境
今回依頼を受けたクライアントですが、自社にてサーバ環境が整っている会社でした。
ウェブサーバ、メールサーバ、データベースサーバなどの環境が整っている環境でした。
サーバはLinuxとWindowsサーバがいくつか存在していました。
ウェブなどの設定は、クライアント側で行ってくれるので
こちらとしては、PHPのコーディングを主に行うことが主な役割でした。
データベースの設計、設定等は私のほうで行いました。
開発自体は、私の作業場でほとんど行い、クライアントの環境へアップロードしテストすることによって
動作確認を行いました。
本番運用の二週間ほど、先方にて作業をさせてもらった感じです。
PHPでの開発について
PHPは比較的簡単でわかりやすい言語です。
実行環境さえあれば、誰でも比較的簡単にウェブシステムを導入することができます。
プログラミング初心者の方にとっても、入り口としては非常にわかりやすい言語だと思います。
今回の開発案件もそうでしたが、実際テスト版として稼働版が出来上がってくると
クライアントからの要望や改善点が出てきまして、当初の予定よりボリューム的には若干膨らみました。
しかし、PHPであれば比較的簡単に機能の改修、修正は行えますので結果的に、
スケジュールもそれほど遅れず進めることができました。
現在でもこちらのクライアントの決済システムは問題なく運用されています。
メンテナンス契約も受けておりますので、不具合が生じた場合や機能要望とがあれば改修作業をさらせて頂いております。