April 06, 2009
サーバサイドに使う言語は、ネットベンチャーにとって開発者採用のブランディングの一つだろう。
プログラミング言語はその哲学が開発者に与える影響は無視できないため、年齢層、技術指向性、技術力、前職給与などがある程度想定可能と思われる。
サービスにとって開発、運用、技術に求める要素は以下だろうか。
・事業戦略を素早く実現できる実装力
・事業の拡大に追従できる柔軟性
・安定してシステムを運用できる継続性
・新しい人を採用しても素早く力を出せるシンプルさ。人材の採用容易性(お給料も)
・地味なことでも事業にコミットできる勤勉さ
もちろん攻める企業であれば、
・最先端の技術を実現する技術力
なんてのも重要だろう。今、一番エッジでイケてそうなのはドワンゴか。ニコニコ動画のライブストリーミングの技術や運用実績はオンリーワンなんじゃないかと思ってる。
もっと小さなところがアイディアで頑張る場合に、どういう風に言語を選択していくか?というのには、どういう開発者に協力を得たいか?と考えるのは重要だと思う。
企業がオープンソースにコミットする際には、この辺のメリットは無視できないし、最近、流行ってないがラボなんて制度も福利厚生レベルでハイスキルなエンジニアを確保したいという戦略にもとづくものだろう。
ただ例えば僕がいるペパボにペパ研制度がそんなに活気付いてないのは、運用主体の会社だから、という面は無視できないと思う。それに個人的にはラボとか事業と関係ない制度でエンジニアに機嫌を取る必要ってあるのかな?とはむしろ思ったりする。やっぱりラボなんかなくたって、ちゃんと事業にコミットできて仕事を楽しめるエンジニアじゃないとサービスでは続かないんじゃないかな。逆に、放っておいても作る奴は作るし。こういうのは制度より文化だと思う。
とここまで書いて全然言語の話を書いていないわけだが、最近、モバツイの負荷問題でAPCのチューニングについて教えてもらったURLでfacebookがPHPを使っていると聞いて、あぁ最近、またdisられてたPHPだけど、PHPって開発者内の評判と、経営的な優位性とが必ずしも一致してない面白い言語だよなぁと思ったので書いてみたかったという結論ありきのエントリーである。つまり、タイトルは釣りかも。
いずれにせよ事業の方向性とエンジニアの指向性がミスマッチだと、ちぐはぐになってうまくいかないことも増えるので、技術志向なのか運用志向なのかってのはマッチングできたら良いですね。(それはなかなか難しいですね)