転職活動を通じて、プログラミングの経験をもっていなかったので、プログラミングの独習を開始していた。 Pythonというプログラミング言語は、特にデータ処理の方に強みがあり、学術的な計算に使用さることが多い言語である。
フリーランスの案件で高水準コードの知識が活かせます
フリーランスは、一人ですべてを行わないといけません。専門知識を知っているのはもちろんのこと、フリーランスとして成功するためには、言語以外の知識も必要になってきます。ここでは、どのような案件が実際にあるのか、その案件を見つけたきっかけ、それを踏まえてお伝えしたいことを記述していきます。
案件を見つけたきっかけ
もともと違う開発言語の転職求人を探していたのですが、知識があれば未経験者でも可能という比較的ハードルが低いものがあり、問合せをしたところフリーランスのエンジニアとも委託契約をしているという事を聞き、その企業に就職するのではなくフリーランスとして契約する事になりました。
自分には自覚はなかったのですが、Pythonという言語は高水準であるため需要は高いものの実際に仕事を受けてくれる人は少ないというお話でした。
たまたまgoogleの主要言語として使用されていたという経緯があった事から、勉強していたことが功をそうしたと感じています。
案件の簡単な内容
可読性が高いプログラミングを短時間でできるという観点から、あまり時間がなかったクライアントより要望がありました。
もともとは、データ解析を主とした開発を希望されていたので「ちょうどいい」と感じ、契約しました。
よくあるケースに、ちょっとした知識だけでその言語を使った開発をして欲しいという要望があるのですが、今回はしっかりと一般の知識ではありますが調べた上で話をされているとわかり、安心して引き受けることができました。
ただしこのPythonを使用する案件は、2日くらいで終わってしまうものから、比較的長期にわたるものまであるのでその差が報酬の差として現れているのがほとんどでした。
私が受けたものは1ヶ月90万円という案件で、PHPも併用しながらパズルゲームを開発するというものでした。
今回この案件に含まれていたものは、もともとある程度の仕様書と要件定義があるのではなく仕様書の作成、要件定義、統計レビューまでがセットとなっているものでした。
ある意味、ここまでまとめて引き受けられるのであればやりやすい案件だと私は感じました。
案件の環境や身についたこと案件の感想
私が実際にこの案件を受けて仕事を完了させるまでにかかった時間は170時間でした。
クライアントが契約時に想定していた時間は140時間から180時間というものだったので、その点から見てもクライアントには満足いただけたのではないかと感じています。
私からすると普通のエンジニア並みの時間で仕事が完了したのではと思っています。
正直可もなく不可もなくと言った感じです
ただし、この案件に応募する際にもともと他の言語の実務経験も求められていました。
今回は、FuelPHPの実務経験と当然のことながらPythonの開発経験です。
開発経験は、未経験でも知識があれば案件に応募できると言ったものが多いのが現状です。
もちろんその場合でも、開発経験者が他にいれば、当然その人と契約することは見えているのですがあえて表記している案件は私の経験では珍しかったです。
あと、ゲームの開発なので途中で一度チームとして開発を進める場面がありました。
実際にゲームを体験してもらい不具合を調査しながら進めました。
自分だけで開発をするとバグに気づかない時が稀にあるので、そう言ったことを阻止するためにも一旦チームで開発を進めると言った方法をとったのだと思います。
案件内容によっては1人で完結してしまう事も多いため、こう言ったチームで開発するといったものも受けてみると勉強になるなと感じました。
また、チームで行えば自分のレベルがどの程度なのか、同じフリーのエンジニアとして働いている人のレベルがどの程度なのかを知ることができるので大変刺激を受けました。
一人で仕事をし出すと、どうしても周りの様子がわからなくなってしまうことがあるので、私の場合は意図的にチームで開発するような仕事を選ぶ場合があります。
システムの開発をフリーで行うとすごく稼げるようなイメージがありますが、実際に稼げているのはほんの一握りだと思います。
チームで仕事をする際にそう言った人と出会うことができれば自分にとっても勉強になるので、そのようなチャンスが巡ってこないかと思っている節もあります。
フリーランスのエンジニアの環境は、常に門徒が広く用意されているわけではありません。
一般事務のように転職サイトが多くあったりサポート環境が整っているとは言い難いと感じています。
ただしその分、フリーで活躍したいと思えばどの程度の仕事を確保できるかはさておき、簡単に独立できると言っても過言ではありません。
ただし、確定申告なども自分で行わなければいけなくなるので、そういったフォロー体制があるフリーのエンジニア向けの案件が紹介されているようなサイトを活用する事も、検討することをオススメします。
フリーのエンジニアは本来業務である開発に関することも大切ですが、その他の面においても一人でしなければいけないことが増えるので、言語以外の知識も必要になります。
そういったことを理解した上でフリーランスとして活躍できれば、誰もが羨むようなフリーのエンジニアライフが送れると思います。