Cybozu Labs

2009年7月24日 (金)

サイボウズ・ラボ体験記

サイボウズの岡田です。

私はもともと東京本社で製品開発を担当していましたが、昨年12月から5ヶ月間サイボウズ・ラボに出向し、本社との共同プロジェクトで研究開発を行いました。そして現在は松山オフィスで製品開発を行っています。松山での開発についてもいろいろとお話したいのですが、それは次回のお楽しみということで、今回はサイボウズ・ラボでの生活についてお話しさせていただきます。

サイボウズ・ラボの人たち

ご存知の方もいらっしゃると思いますが、サイボウズ・ラボでは錚々たるメンバーが働いています。出向前はそんな人たちと一緒に働ける楽しみと、天才と呼ばれるようなエンジニアは気難しくて関わりにくい人が多いんじゃないか、技術力が違い過ぎるのにうまくやっていけるだろうか、という不安がありました。しかし、いざ行ってみると、コミュニケーションを取るのが好きな人ばかりで、本当に楽しく働くことができました。

もちろん、楽しく飲むこともできました。
Labs

また、ラボのメンバーは毎週のように技術系のイベントや勉強会に参加していました。毎週行われる進捗報告会で話を聞いていると、社外の交流の場でたくさんのエンジニアから情報を仕入れて技術力を磨くことも重要だと感じました。

日常の様子

仕事中はみなさん黙々と作業しているので基本的に静かですが、グループウェア上のコミュニケーションは非常に賑やかでした。

特に賑やかなのはラボのメンバーひとりひとりが持っている『ひとりごと』という掲示板です。技術的な話からご飯の話、お子さんの話まで、本当になんでもかんでも書きたいことを書くのですが、全員が全員の『ひとりごと』をチェックしていて、あっという間にたくさんのコメントが書き込まれます。

これはおもしろい!ということで、松山開発部でも『ひとりごと』を始めてみましたが、意外な人からコメントが書き込まれたり、いろんな技術情報を簡単に共有できたりと、今では欠かせないツールになっています。

学んだこと

ラボでの私の主な業務は C++ での設計・コーディングだったので、特に C++ に関しては非常に勉強になりました。

template も STL もよくわからず、設計なんて全くやったことがない状態からスタートし、C++ の基礎文法レベルがきちんと理解できるようになるまで1ヶ月。boost のソースコードをある程度まともに読めるようになるまで1ヶ月。自分の書いたソースコードを見直しては納得がいかず何度も書き直すこと延々…。

毎日のように技術的なアドバイスを受けたり、何度もコードレビューをしてもらって最終的に納得のいくものを作り上げることができましたが、自分一人で勉強しただけでは到底成し得なかったことだと思います。

最後に

これまで、サイボウズとサイボウズ・ラボの交流は決して十分ではありませんでした。しかし、今後はもっと交流を深めて、ラボの技術力をサイボウズのエンジニア一人ひとりの技術力の向上、そしてサイボウズ製品の進化に活かしていきたいと思います。

また、私自身はラボから遠く離れた松山の地で、ラボで学んだことをしっかりと伝えていければと思っています。

2009年5月27日 (水)

サイボウズ・ラボの副社長

山本泰宇と申します。

サイボウズ株式会社(以下、本社)のCTOで、サイボウズ・ラボ株式会社(以下、ラボ)の副社長でもあります。

ラボの技術力をサイボウズ製品に活かすべく、今年の2月からラボの副社長を兼務して本社とラボのR&Dを指揮しています。

ラボ発の技術がサイボウズ製品に搭載されるのも、そう遠くないでしょう。ご期待ください。

以上、なんですけど、短すぎると注文が付きましたので、技術にまつわる一言でも書いてしめくくることにします。

今日の一言:
Windows でも hoge.exe > hoge.log 2>&1

2009年5月21日 (木)

開発環境を仮想環境で構築

畑です。

最近、というかだいぶ前から仮想環境というのが流行っていますが、ソフトウェアの開発にも非常に便利で、利用されている方も多いのではないかと思います。サイボウズ・ラボでも仮想環境を活用している開発者はいます。

実は、ついこないだまでは各開発者ごとに各自のマシンにて、個別に仮想環境を構築していたのですが、最近1台のハイスペックなマシンを導入し、そこにメモリを大量に積んで、共用の仮想環境サーバーを構築しました。共用の仮想環境サーバーには各開発者が自由に、目的ごとに仮想環境を作成できるようにしています。

私の場合、開発プロジェクトが発生するタイミングで、仮想環境を作り、開発プロジェクトが終わったら休止させる、というサイクルで利用すること行っているのですが、非常に便利さを実感しております。プロジェクトを複数かかえていても、仮想環境として分けていれば、互いの開発環境が影響しあうこともないので、非常に効率がいいです。

仮想環境の便利な使い方を発見したら、また報告したいと思います。

ちなみに、今日から本ブログを開始したいと思います。
サイボウズおよびサイボウズ・ラボの技術陣が執筆する予定です。

サイボウズ・ラボを含めると、サイボウズの現在の開発拠点は、
本社(文京区後楽)、松山、上海、ベトナム、そしてラボ(港区赤坂)に分かれるのですが、
各拠点の開発者の声も今後はこちらから届けることができればと思っています。

今後ともよろしくお願いいたします。