前回ライブコーディングしたモンテカルロ法のシミュレータを
プロのフロントエンドエンジニアが仕上げると、どういう風になるかを説明します。
動画解説版:https://youtu.be/WjYFiza_LMY
目的
若手のエンジニアさんに
フリーランスのフロントエンドエンジニアがどういう思考回路で仕事をしているかを知ってもらいたい
そもそもモンテカルロ法とは?
ルーレットの掛け金を決める法則で、その通りやれば必ず勝つと言われているものです。
ルール1. 紙とペンを用意
- 用意した紙に、数列「1, 2, 3」を記入
- 両端の数字を足した値がベット額となる(1 + 3 => $4 ベット)
ルール2-1. 負けた場合
- 数列の最後に「賭け金」を追加する(1, 2, 3 => 1, 2, 3, 4)
ルール2-2. 勝った場合
- 両端の数字を削る(1, 2, 3 => 2)
ルール3. 残りの数字が無くなる or 1つになれば終了
- その時点で黒字が確定する
これをWebアプリでやりたい
カジノに紙とペンを持っていくのは面倒だから
スマホで「勝ち負け」を入力すると「次のベット額」が表示されるようにしたい
見積もり
私が見積もるとしたら、下記の通りです。
フリーランスとしての見積もり
- 10〜15万円(※ソースコードのみ納品する場合)
- 20〜30万円(※ドメインの設定、サーバ設置などもろもろ含む場合)
※ちなみに企業だと
企業だとどんな簡易なWebアプリでも関わる人間が多くなるので、
ミニマムでも50万円〜になると思います。
ただし、50万円という数字は企業からみると大きな数字ではないので
- BGM機能
- 勝ち負け演出
- 履歴機能
- シェア機能
などの、(すごくよく言えば)付加価値を加えて 100万円 の案件になることも多いと思われます。
見積もり金額の意図
見積もり金額 = 工数 + 価値
見積もり金額の意図としては
自分は「工数 + 価値」を総合的に勘案して決めています。
工数
工数の部分は、フリーランスだと人日3〜5万円ぐらいで計算している人が多いと思われます。
企業だと人日5〜10万円ぐらい。
※人日5万 => 5万x20日 => 月100万
今回のアプリは、私の見積もり工数だと 2〜3日 なので 5 x 2 => 10万円だとします。
価値
多少だけど専門性があって、
このアプリがあることでカジノで快適に過ごせるようになるという価値があるので
今回はその価値を5万円とします。
工数 + 価値
10 + 5 で 15万円 という数字になります。
フリーランスの実情
私が知っている世界だと、
個人に頼むことで、品質よりもコストを抑えたいと考える顧客が多いのが実情です。
したがって、10〜15万円が結構リアルな数字なんですが、
顧客の費用感としては10万円ぐらいであることが多いと思われます。
ので、じゃあ10万で収まる内容でやりましょう、というのが残念ながらリアルな実情かな、、と。
20分で作ったものが10万円?
仮に10万だとしても、
ライブコーディングで20分で作ったものが10万円ってどういうことだと思うかもしれません。
が、実際にプロとして仕上げる場合は
ライブコーディングにはない工程がたくさんあります
- 見積もり
- 作業の洗い出し
- 設計
- 実装
- 検証
また、顧客を幸せにするための価値をつけて提供するので、適切な金額かなと思います。
顧客を幸せにする価値とは?
- メンテナンスしやすい作りにする
- 不具合に強いロジックにする
などの、「脳みそを使った実装をする」ことを指します。
まとめ
モンテカルロ法のシミュレータを題材に、簡易Webアプリを作ると想定したとき
フリーランスのフロントエンドエンジニアなら、どういう思考回路で見積もりをするかを述べました。
設計編に関しては次回まとめます。