日別アーカイブ: 2012年4月12日

TwitterのエンジニアとFacebookのエンジニア

先週、TwitterとFacebookという大きな二つの会社で働くエンジニアに関しての記事を
偶然見かけた。
それぞれ、書いてあった内容は異なるが色々思うところがあったので少し書いてみる。

Facebookの開発者文化

記事はこちら

Facebookのソフトウェア開発手法
http://langturn.com/translations/30?locale=ja

Facebookに関しては私はそれほど詳しく知っている訳ではない。
せいぜい、映画「ソーシャルネットワーク」を見た程度。

ただ、この記事を見ると、その開発者中心な。
もはや文化と言えるような手法にかなり驚かされた

エンジニアリングが主導する文化だ。「プロダクトマネージャーはここでは本質的に役に立たない」と、あるエンジニアは言う。
エンジニアは自由に内部仕様を変更し、取り組むプロジェクトの優先順位を変更し、新しいアイデアを追加することができる。

ちょっと、正直どう収集が着くのかがよくわからない。
ただ、逆に言うとそれだけ多くのエンジニアが主体的に考え、
また、情報共有が出来ているのではないか?とも思える。

生産的でなくスーパーな才能を持っているわけでもない人は目立つ。マネージャーたちは、パフォーマンスの乏しい人々を脇に避け、6か月以内に、文字通りこう言う。「これじゃ仕事をしているとは言えないね、君はうちの文化にあわないようだ」。これはどのレベルの人にも適用される。CレベルでもVPレベルでも、超生産的でなければクビになる。

そういうやり方でやって行くとすると、どうしても普通の開発者は目立ってしまうと言うことか。
ここで言う、目立ち方というのはバグを多く出すという事ではなく、
Facebookの文化を強く推進する事が出来るか・・・と言うことなのだろうか。

一概に開発者に取っての天国だとか地獄だとかは言えないと思った。
そして、これ以上大きくなり得るのだろうか?とも思う。

Twitterのエンジニア

記事はこちら

Twitterエンジニアって、どんなお仕事? 本人たちに聞いてきた
http://www.rbbtoday.com/article/2012/04/04/88031.html

Facebookの開発スタイルを見た後で読むと、
その開発手法というのは比較的に一般的な手法に近いように思える

開発プロセスはTwitterだからといって特別なことはあまりなく、まずJIRAチケットを切ってもらい、ローカルで開発・テストの後、ステージング環境でテストし、他のエンジニアにコードレビューをリクエストする。レビュアーから承認(Ship it!)がもらえれば「Preflight」と飛ばれる各ブランチをマージして矛盾なく動くかを確認する直前点検を経て、めでたくデプロイ→リリースとなる

手法は一般的かもしれないが、リリースまでの期間が最短で一日というのはやはり早い。
まぁもちろん、これは内容によりけりなんだろうけど。

オープンソースを多く活用しているというが、
実際にはTwitterのエンジニアがオープンソースに多く参加しているというのが正しいのではと、
勝手に思っていたり。BootstrapもTwitter製だしね。

開発のプロセス自体は珍しいものではない・・・と思うので、
Facebookに比べると規模は大きくなりやすいようにも思える。
なじみやすいというところか。

実際のところではもちろん、これだけの技術を支える事が出来るだけの
人材育成上の仕掛けがあるんじゃないのかな。
その辺りまでは記事では触れられていないので少し気になる。

少し前の記事だが、こんなのを見つけた

[独占インタビュー] Twitterで働く日本人「開発現場はリアルなタイムラインのよう」 【採用情報つき】
http://engineer.typemag.jp/trend/2011/11/post-22.php

なるほど。誰でもどのソースでも触る事が出来るというのはFacebookに似ている。
何れにしても、やはり圧倒的な開発力なんだろう。

少し考える

こういう記事を見ると、自分の行動力の無さにほんっとがっかりするんですよね。

この10年くらいで、開発の環境はずいぶんと変わった。
それなのに、自分を取り巻く環境はあまり代わり映えがしていない。
本を読んで勉強している気になっていたとしても、手が動いている訳じゃない。
つまり、それは結局のところ意味が無い訳だ。

一方で、会社での業務は日々管理よりの方向に動いて行っている。
それはそれで一つの方向だとは思うけど、なんだかどっち付かずな状態になってる気がしてしょうがない
いい加減動かないと行けないな。