年収と政治の話はするな
ものを買うときには、相場というものが存在する。相場というのは大体の価格帯であり、その価格帯から大きく外れると「なんでこんなに高いんだ?」とか「なんでこんなに安いんだ?」とかってことになる。例えば、同じ寿司であっても回転寿司が 100 円で、なんでこんなに高いんだ!ということもあれば、ミシュランの三つ星寿司店で、1 万円の寿司がでてきて、なんでこんなに安いんだ!ということもある。あれ? 逆か、いや、収入によりけりだし、1 万円の寿司だって材料費が航空便の 1 万円かかるように輸送費が掛かっていたとしたら「安い」には違いない。100 円の寿司だって、ちょっと、これは寿司とは言えない(どこの寿司とも言えない)場合には、二度と来るかっ!ってなもので、高いことになる。
いや、それは、まあ、いいんだが、話を相場に戻そう。
回転寿司とか高級寿司の場合は材料費から価格が決まるとか、その土地の値段、店舗を出すための費用とかから価格が決まることが多いのだが、IT 業界の場合は、もうちょっと違う価格の決め方がある。
つまりは、漫画家や小説家のように、1枚の原稿がいくら、という決め方がされている。
漫画の原稿料の場合は、有名な漫画家と無名な漫画家では1枚の単価が異なる。これは当たり前のようにも見えるけど、理不尽のようにも思える。1枚の原稿にかかる時間と労力を考えたときに、有名な漫画家と無名な漫画家でこれほどの時間が違うだろうか。10 倍もの差がでるだろうか? 確かに、手塚治虫ほどになれば 10 倍ほど作業時間が違うかもしれないが、たいていの場合はそんなことはないだろう。雑誌の原稿料とか、小説の1枚単価(あるいは文字単価)も似たような感じで決まっている。有名な漫画家や小説家の1枚の単価が高いのは、出来上がった原稿がそれだけ売れるから、という出版社の都合に過ぎない。つまり、売れる見込みがあるから高く買い、売れない見込みならば0円でも買いたくないと思う。ただし、出版業界はそれほど単純なものではなくて、売れない漫画家であっても小説家であっても将来的に業界を育てなければいけないので、今は売れなくても将来には売れるかもしれないので、投資のため育成のために原稿料を払う(当然、雑誌に載るというのも同じだけど)ということになる。
そのあたりの限界値が、原稿料の相場という形となっている。
だから、不当に安い原稿料であったとしても、その漫画家が漫画だけを描くことによって生活できるかどうかはわからない。端的に言えば知ったこっちゃないのである。払える分は払うけど、払えない分はなんとかしてください、としか言いようがない。
これはアニメ制作業界にも言えることなのだが、ここでは長くなるので問わないことにしよう。
さて、IT 業界でも似たような現象がある。
プログラマの時給や単価はどう決まっているのだろうか、ということだ。
以前は、1行につきいくら、という行単位の単価が決まっていたことが多い。まさしく、1行を書くために時間が必要であり、それに見合った金額を支払いますという価格設定だ。漫画家と同じく1枚いくらという単価設定と同じである。
これは、ちょっと有名な漫画家に原稿を頼むのと同じように、ちょっと有名なプログラマにプログラムを書いて貰うと単価が高くなる。実際のところ、1行のプログラム、数行のプログラムで一般的なプログラマと超有名なプログラマの差はほとんどない。ほとんどないというか、実際見分けがつかない。タイピングも同じだし、フォントも同じならば、それは一体、何が違うのか? ということになる。
が、そこには過程があるのだ。
数行のプログラムを書くのに、それだけの考察をするのか、どれだけのテストを繰り返すのかと言う能力の違いが、普通のプログラマと超有名なプログラマとの違いがあるのだ。
コードを具体的に書いてみよう。
普通のプログラマでは、Web API を呼び出して、JSON 形式のデータを分解するコードは次のように書く。
```python
import requests
response = requests.get("https://api.example.com/data")
data = response.json()
print(data["key"])
```
なるほど、一般的なプログラマならば python を使って、こんなプログラムを書くだろう。
しかし、超有名なプログラマであれば C 言語で次のように書くのである。
```c
#include <stdio.h>
#include <stdlib.h>
#include <curl/curl.h>
#include <json-c/json.h>
size_t WriteCallback(void* contents, size_t size, size_t nmemb, void* userp) {
size_t totalSize = size * nmemb;
strncat((char*)userp, (char*)contents, totalSize);
return totalSize;
}
int main() {
CURL* curl;
CURLcode res;
char buffer[10000] = {0};
curl_global_init(CURL_GLOBAL_DEFAULT);
curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_URL, "https://api.example.com/data");
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, buffer);
res = curl_easy_perform(curl);
curl_easy_cleanup(curl);
struct json_object* parsed_json;
struct json_object* key;
parsed_json = json_tokener_parse(buffer);
json_object_object_get_ex(parsed_json, "key", &key);
printf("%s\n", json_object_get_string(key));
json_object_put(parsed_json);
}
curl_global_cleanup();
return 0;
}
```
なんてすばらしい!
どちらも AI に書いて貰ったコードなのだが、まるで普通のプログラマと超有名なプログラマの差がわかるようなコードではないか!ということにして頂きたい。コードの中身はあまり意味はないのだ。そういえば、小説の中に HTML コードを書いている小説家もいるので、だらだらとプログラムコードを書いてもいいかな、と筆者は思ったりもするのだが、それが、何か意味を持つのかというのは難しい。ひょっとしたら、QR コードが小説の中に埋め込んであって、それをスマホで読み込んだら、どこかのサイトに飛ばされる、っていうのも今後はありだろう。
なんか、セキュリティ的に炎上してしまいそうで、危なそうだが。
それは兎も角、超有名なプログラマの単価が高いのは、寿司が美味しいとか、寿司の原材料が高いとか、輸送費が掛かるとかそういうものではない。たまに、外国から現地にプログラマを呼び寄せるためにお金が掛かったりするけど、最近の WEB 会議が普通になってしまった世界では、現地に飛ぶことはあまりない。と、言いたいところだが、最近の出社回帰の現象を見ると、呼び寄せられた開発者には高い支払をするかもしれない。そこは要注意だ。
いわば、プログラマは技術職なので、超有名なプログラマは普通のプログラマよりも技術力が高いのである。技術力が高いというのは、自動車の職人とか建築の職人とか時計の職人とかと同じレベルである。つまりは、問題解決能力が高いとか、問題意識の範囲が広いとか、プログラム言語やその背景に精通しているのでいろいろな条件に対処できるコードに辿り着きやすいとか、そういう付加価値的な専門能力が高いのである。別に、タイピングがはやくて、普通のプログラマよりも 10 倍のスピードでタイピングができるので、10 倍の単価を貰っているわけではない。
逆にいえば、普通のプログラマが 100 人集まってもうまくいかないものが、1人の超有名なプログラマがやってきて 1 人で解決してしまうこともある。しかし、ブラック・ジャックでもなければ 100 倍の単価を吹っ掛けることはないだろう。せいぜい、ええと、何倍だろうなぁ、5 倍ぐらいですかね?
最高基準がどこにあるかいまいちわからないが、最低基準はクラウド○ークスあたりで見ることができる。「WEB サイトの構築と不具合直しで 5 万円でお願いします」ってのが出てくる。え? それ本気で言っているんですか? って具合なので、ひょっとすると 10 倍以上の開きがあるかもしれませんね。
しかし「5 万円でお願い」する発注側だけに難があるわけではない(いや、ちょっとは難があるけど)。発注したとしても誰も受けなければよいので、その単価は不当に安すぎるということになる。つまり、相場感がおかしいのである。イラストレーターに 1000 円で似顔絵を発注するのと同じなわけだ。1000 円って言ったら、最低料金なのだから 1 時間で仕上げないとペイができないのだ。しかし、そのイラストは 1 時間で仕上げることができるのか? という話でもある。
逆に、5 万円の発注を受けるときに、どれだけの時間をかけられるだろうか?というのを計算してみればよい。
月50万円単価の場合は、3日間かけることができる。
月200万円単価の場合は、1日弱となる。
会社員の給与ならいざしらず、フリーランスで経費込みの場合は 50 万円単価というのは極めて安いほうである。どこかに派遣や SES などに行くときには最低でも 100 万円はお客から支払われている。
え? 手元に 100 万円届かないって?
いや、そんなことは、******、まあ、あるかもしれない。それは、**ってものだろう。
そこには、営業というか、中間というか、マネジメントというか、そういう人たちが入ってくるので、手元に届く金額は少なくなる。その人たちの給与も必要だからだ。なにも、その、天使の取り分というわけではない。ウィスキーが蒸発しているわけではないのだ。しっかりと、中間搾取のポッケに入っているので安心して欲しい。
そんな訳で、発注するお客側から見ると、プログラマ本人の単価はあまり気にしないものなのである。プログラマがいくら貰っているのか、貰っていないのか、それとも、自分たちの給与よりも貰っているのか否か、という比較位しかできない。派遣だとか n 次だとかいうのはよくわからない。
だから、発注側から見ると、開発プロジェクトの経費はトータルでしか考えるしかない。ゆえに、発注者側の相場、つまりは支払い能力を知れば、その範囲でフリーランスの単価が決まるのである。実は、営業も同じだ。
車を買うわけではないので、車の値段がいくらという提示があるわけではない。
しかし、月 100 万円です。というように、お客から見ると「ああ、そうなんですね」という判断基準があるのを知っておくべきである。つまりそれが相場だ。
「で、結局、このサイトは 5 万円で作れるんですか? 仕事ないんでしょ? どう、5 万円でもやったほうがいいんじゃないですか?」
「いや、断る!!!」
【完】
分断を生むので、年収と政治の話は仕事の現場でしないほうがいいです。
あ、野球もそうかも。




