浜松から新メンバーがジョイン!ソニックガーデンの文化と価値観に慣れることができるのか!?【後編】

今回は浜松からジョインした新メンバーに代表倉貫がインタビューを行いました! 前職ではCAD等の専門的なソフトウェアを開発していたという大野浩誠(おおのひろまさ)さん。どのような経緯でソニックガーデン入社に至ったのかお聞きしました!
目次
毎週成果を見せることになるので、集中力をつかう

1年たって2015年秋から見習いを始めて、コンサルのお仕事の準備をして、今はもう案件は持っているんですか?

そうですね。案件は2件持っていて、1つは自分がメインで、最初からミーティングも含めてほぼすべて担当しています。もう1件は途中から参加した案件ですね。昔からのお客様で、アプリに力を入れたいということで、僕がアプリの経験があるので、そういった関係で途中から参加させてもらっています。

実際に働いてみて、どうですか?

大変な仕事だというのは、なんとなく聞いてはいたんですけれど、想像しているよりも結構大変です。というのは、いわゆる納品のある仕事だと、大体数カ月とか、半年とかのスパンがあるので、忙しいときは忙しいんですけど、ちょっと気を抜くときもできるんですよね。ただ、納品のない受託開発という仕事をしていると、もう毎週毎週成果を見せることになるので、すごく忙しい時期とすごく休む時期みたいのがなくて、平均的にしっかりやっているということが求められるので、なかなか一息つく暇がないと感じています。でもそれはもしかしたら僕の今の状況がそうさせているだけなのかもしれないですけれど、まだ結構集中力を使うというか、そういうところはあります。

息継ぎは、ちゃんとうまくできてますか?

ぎりぎりできています(笑)
困ったときはすぐに助けてもらえる安心がある

「思ってた通りだ」というところは、どこかありますか?

そうですね。いろいろなメディアなどで「ソニックガーデンではチームで仕事をするのを大事にしている」と読んできましたが、それは本当にその通りで、ちょっとしたことでも相談したり質問したりするのがよいとされていて、実際にその通りでした。困ったときにはすぐ助けてもらえる安心感がありますし、今度は逆に、僕に何かできることがあれば、ぜひ力を貸したい、手伝ってあげたいなという気持ちにもなるし、そこはすごく聞いた通りというか、むしろ聞いている以上にいい文化だなと思いますね。

今は浜松なので、リモートワークですが、リモートでもその辺は違和感なくやれていますか?今まではずっと浜松で顔を合わせて仕事をしていたのかなと思うんですけれど。

独立してやっていた約3年間、半分ぐらいは自宅から仕事をしたり、東京のお客様も多かったですし、スカイプでの打ち合わせや、掲示板上でのやり取りに慣れていたので、リモートワーク自体に抵抗はなかったんですね。でも、やっぱり気軽な質問をするとか、そういったものには、入りたての頃はどうしても抵抗というか、「いいのかな」とか、「こんなの自分で調べた方が自分の身になるんじゃないかな」とか、いろいろ葛藤はありました。半年ぐらい在籍してみて、わりとみんな聞いているなというのがだんだん分かってくると、それがむしろいいことなんだなと分かってきた感じはありますね。

じゃあ、そこは別にリモートでも関係なく気軽に聞ける感じですか?

そうですね。

リモートでも気軽に聞けるようになるための、ポイントみたいなものはありますか?

大きかったのは、合宿で実際にメンバーに会ったことは絶対にあるなと思います。実際に対面で会っておくというのは、少なからず必要なことかなと思っています。

合宿で乗り越える何かはありました?

合宿で強制的にニックネームで呼び合う活動をやったんですけれど、それによって呼んでもらえるようになったし、呼ぶようになったということもあって、それぞれの人との距離がキュッと全体的に縮まったような感じがありましたね。
自分の癖や、よくないやり方に気付けるのがコードレビュー

ソフトウェア開発そのものについては、今までの仕事と違う感じはありますか?

今までの仕事はあまりコードレビューをされたことがなかったので、コードレビューは特徴的ですね。そもそもコードにフィードバックをもらうということがあまりない文化にずっといたので、とてもいいと思います。日々垂れ流しでつくっていくと、自分の変な癖とか、よくないやり方、もっとこうした方がいいやり方に気付けないと思うんですけど、コードレビューを通してそれに気付けるだけでもいいですよね。

ソニックガーデンのコードレビューはどういうものですか?

大体1週間単位の開発分を、実際に運用環境に反映する際に、品質に問題ないかどうかをチェックするために行っています。

やり方としては、どういう手順で?

基本的にGitHubのプルリクエストをつくって、そこにコメントを付ける形です。手の空いてる人か分からないですけど、誰かそういう人が「プルリクエストを見ますよ」と宣言するコメントを付けてくれて、「こことここは直したほうがいい」とか、もしくは「問題ないからリリースでOKです」とか、コメントを必ずもらえるような仕組みです。

見る人は、決まった人が見るんですか?

見る人は特に決まっていなくて、誰でもいいというか、いろんな方に見てもらえるし、逆に自分が見たりもします。

それは仕様とかを知らなくても見れるんですか?

仕様は、かなり業務部分に近いところ、いわゆるビジネスロジックみたいなところは、お客さんのことをよく知っている人同士で相互にレビューしたりするのがいいんですけれど、そうではなくて、Ruby On Railsの基本的なところから逸脱しているとか、もうちょっと一般的なレベルでのコードレビューについては誰でも見れるようなレベルにあるので、そういった感じで見てもらうことができますね。
コードレビューは、されるより、する方が学びが多い

ソニックガーデン式のコードレビュー、他の会社にもおすすめできますか?

そうですね。若干話がそれますけど、コードレビューする方が学びが多いので。

それは、してもらう方じゃなくて?

してもらう方じゃなくて、する方が学びは多いですね。ソニックガーデンのコードレビューの場合は、コードレビューを通ったら、そのプログラムはリリースされて実際に使われ始めてしまうので、下手なコードレビューをしてはいけないんです。なので、本当に大丈夫かどうか、ちょっと厳しめの目線で見ることになるんですね。なんとなく正しいかどうか怪しい部分があったときに、「なんとなく怪しいけどいいか」とOKを出せないですし、そうしたら根拠を持ってコメントするようになるんですね。

なるほど。指摘する側も、ちゃんとロジカルに指摘できないとダメなんですね。

そうなんです。指摘するときに根拠をちゃんと書くようになるので、もしくは、なければ調べて、「こうだからダメなんだよ」と根拠を持ってコメントしてくことになるので、そのロジックがどんどん自分の中で出来上がっていくのはとてもいいですね。次に自分でコードを書くときに、同じロジックを持ってよいものを書けるというふうに自分自身もよくなっていけるんです。

じゃあ、品質もあるけど、実は教育効果というか、学習効果があると。

ありますね。

じゃあ、いろんな人が、他の人のコードレビューをやったほうが得なんですね?

そう、やったほうが得ですね。
自分のことを棚に上げてコードレビューにのぞむ

でも、最初に「コードレビューをします」と宣言するとき、勇気が必要だったんじゃないですか?「俺がしていいのかな?」みたいな。そこを乗り越えたのは、何かきっかけがあったんですか?(笑)

まだ乗り越えてないです(笑)

まだ乗り越えないの(笑)まだコードレビューしてないんですか?

してます。してますし、した方がいいし、することによって学びもありますし。でもコードレビューをするときって、ちょっと自分を棚に上げるというようなところがあって、「これできてないな」と思いながら、してますね。

でも、できてないことに気付けるので、「ああ、この人のやっているこれはダメで、でも自分もできてない。だから、次はこれをやっちゃいけないな」というのに気付けるというか。頑張ってやるしかないですよね、最初は(笑)

じゃあ割り切って、もう今はコードレビューもやる側になっているんですね。

はい。自分も定期的にコードレビューの依頼を出すようになってきたので、そうすると、コードレビュー待ちのものが多くなってくると、なかなか自分の順番が回ってこないので、「よし、残ってるのはやっつけよう」と。お互い様というか。

そうか。順番になってるから、人のレビューを消化しないと、自分の順番が回ってこないんで、「じゃあ、消化しようか」というモチベーションなんですね。そうか、そういう仕組みになってるのか。「なんでみんな、お互いにやるんですか?」とよく聞かれるんですが、もちろん勉強になるというのも1つあるんだけど、自分のを見てもらうためには人の分を消さないと回ってこないということですね。みんな善意でやってるのかなと思ってたら、違った。自分のをやってほしいから(笑)

結局そういう、自分のためというインセンティブがあったほうがいいんですけど、たまたまというか、そうなっているので。
ふりかえりが、ソニックガーデンの文化を共有する場

コードレビュー以外に、ソニックガーデンの特徴はありますか?仕事の進め方、仕事の仕方とか、会社として。

特徴として一番大きいのは、リモートワークが中心だというのはやっぱりあると思いますね。

リモートワークという環境の中で、ソニックガーデンのカルチャーみたいな、考え方みたいなものは、どうやってみんな知っていくというか、学んでいくんでしょう?

ふりかえりですね。毎週とか、2週間に1回とか、いわゆるKPTみたいなことをやるんですね。ここがよかったとか、ここがよくなかったとか、次はこうしていこうっていう。

ふりかえりはチームでやるんですか?アジャイル的なふりかえりでいうと、チームでやる感じですけど。

大体は1対1ですね。1人がメンターとして付いて、自分が考えたことをひと通り議事録みたいな感じで書いたりとか、しゃべったりしていって、そこに対して「いや、ソニックガーデン的にはこういうことを考える方がいいよ」と、そこが価値観を共有してもらう場になりますね。

そこでは、個人の仕事の進め方について振り返るわけですね。

そうですね、個人の仕事の進め方、考え方についてですね。
ふりかえりでは、問題を深堀りしたり俯瞰的な視点を得る

そのふりかえりを通じて、大きく指摘されて変わったところなどはありますか?

さっきの話にもありましたけど、「困ったらすぐに相談する方がいい」というのは、ソニックガーデンの新規メンバーが最初に抵抗を感じてしまうポイントだと思うんです。なので、最初は自分で時間を使い調べ過ぎてしまうんですが、最終的には「誰か助けて」と質問をして解決はするんです。そういった経験に対して、「そんなに時間を掛けてしまってはもったいないよね。早めに聞けばいいいよね」という指摘を何度か貰ったりしました。そこから「じゃあ、その聞けない理由はなんなんだろうね」というところまで、ちょっと深く考えていくことになるんです。

ただ単純に「すぐに聞きましょう」ではなくて?

そうですね。「聞けないなら聞けるようになりましょう」で済ませてしまうと、ただその問題の裏返しを言ってるだけなんですけど、もう少し深掘りしたり、俯瞰的な視点を得たりすることで、単にその問題に対するソリューションだけではなくて、いろんなことに対処できるような考え方とか、価値観を身に付けていくという活動をする場ですね、ふりかえりが。

そのメンターの人は固定なんですか?コードレビューと一緒で、勝手にいろんな人がやってくれる?

メンターの人は基本的に固定のことが多いですね。ときどき変わったりとかっていうこともありますけど、基本的には大体何カ月間とかは固定でやってもらってましたね。

週に1回?

週に1回とか、慣れてくれば、2週間に1回、隔週になったりとか。
頭の中で設計できないところに先回りして気付き、議論する

他にソニックガーデンに新しく入った人が感じるであろうことって何かありますか?

そうですね。技術力の話でいうと、入って一緒に仕事をするようになって、元々いる人が開発する様子を見ると、速いなと感じると思いますね。つくり始めてから1つのタスクが終わるまでが、ものすごい速いです。仕事の進め方にも関係するんですけど、つくるときにはもう大体のプログラムが頭の中でイメージできている状態の人が多くて、だから速いんですよね。自分にそのイメージがない状態で見ていると、ものすごいスピードでつくり上げているように見える。その考え方に慣れるまでは、なんとなく手を動かし始めつつ、一緒に考えながらやらないと、どうしても、下手すると倍とか、そのぐらいの時間が掛かってしまう。

追い付き方のコツは、見えてきました?

たぶん、コツは頭の中で設計する能力ではなくて、頭の中で設計できないところに気付いて、例えばミーティングで議論しておくとか、問題になりそうなところは予め相談しておくとか、そちらだと思うんですよね。

先回りしてね。

先回りして。そこに、もう少し僕としては慣れていきたいというか、そこの力をもうちょっと付けていきたいなと。先回りできてなくて「ああ、これを聞いておかなきゃいけなかったな」と後で思うこともちょこちょこあるので、そういうのがどんどん減っていくことによって開発のスピードも当然上がるし、お客さんとやり取りする手戻りじゃないですけど、そういうのも減るし、そこは結構重要な力かなと思いますね。
ミーティングの密度を上げることが大事になってくる

お客さんとの打ち合わせが真剣勝負になりますよね。2時間で話もするし、実は話をしながら頭の中で設計を終わらせておかなきゃいけないし、終わらせるためにその2時間でどれだけ聞いておかなきゃいけないかっていう。

そうですね。

だから、そこが終わっていれば、あとは手を動かすだけだから速いですよね。逆に、もうその2時間の毎週の打ち合わせでクタクタになるはず。ソニックガーデンの会議はだいぶ特殊で、報告とかじゃないんですよね。

違いますね。

休憩してる場合じゃないみたいな(笑)その辺は結構違うところかもしれないですね。

違いますし、ミーティングの様子を見学してるだけでは分からないことが多いですね。自分でやってみて初めて、その時間の重要性というか、どれだけの密度にできるかが大切だって気付けるんですよね。

大野さん自身が、ソニックガーデンの納品のない受託開発もやり始めて、プログラマーとして仕事をしていく上で大事にしたいなと思ってることは何でしょうか?さっきの改善したいという気持ちなどもあると思うんですが。

はい。改善したいというのは、僕自身の進め方とか、技術力、能力とかにも、その考え方が当てはまるんですけど、やっぱり自分が現状維持ではいたくないというのが一番根本にあるような気がしています。だから、納品のない受託開発においても、当然さっきの話の、ミーティングの密度を高めてお客様のビジネスをちゃんと成功に導けるようにという部分は高めたいですし、そこときちんと並行して新しい技術とか、技術力を伸ばすというところにも力を入れてやっていきたいですね。
このままつくり続けたい

この先のビジョンって何かありますか?

この先のビジョンですか。そこは、つい「伸ばしたい」って思うんですけど、「どこを?」と聞かれると、「どこなんだろう」と悩んでしまう部分ですね。「放っといたら自分では何をやっているんだろうか」と考えたりしてるんですけど、動くもの、自分が使えるものをつくることが今のところ一番好きなので、このままつくり続けられればいいかなとは思ってますね。

つくり続けるというビジョンですね。いいと思います。じゃあ、最後にハッカー気質でいろいろ変えてきた方なわけですが、ソニックガーデンで何か変えたいと思ってるところはありますか?

最近までは「リモート飲み会」しやすくするツールだったんですけど、解決しそうなツールが飛び出してしまったので、マイナスをゼロに戻したい部分はほぼないですね。「もっとこれがあったらいいのに」という意味で、社内向けでつくりたいシステムがいくつかあったりはするので、その辺自分が何か貢献できればとは思っています。

今、つくりたいものは、何ですか?

倉貫さんのインタビューの録音だとか、あとはミーティングの録音を社内で共有したいという意見があって、それを簡単に投稿できてアプリで聞けるようになると、いろんな情報共有もスムーズになるし、興味を持った人は、その興味あるものを選んで聞けるようになるので、すごくよさそうだなと思って。

もう1個は、コードレビューのツールですね。ソニックガーデンのコードレビューは毎週毎週やるんですけど、大きなリリースのときだとか、最初のリリースのときにはどうしても変更分が大きくなってしまうことによって既存のツールでは見きれないケースが最近多発していて。それをもしかしたら社内のシステムで簡易的に解消できる可能性があると気が付いたので、そこにもトライしたいなと思っています。

じゃあ、そんな感じで、いろいろつくりたいものもあるので、それをつくっていくということですね。あとは、納品のない受託開発やりながら、息継ぎの時間を増やして、遊ぶ時間を増やさないといけないですね。今日はありがとうございました。

ありがとうございました。

- ライティング:岡田由美子
- 早稲田大学第一文学部在学中より、物書きを目指してひたすらに原稿用紙に文字を埋める日々を過ごす。卒業後、EC系のベンチャーで新規事業の開発に取り組む。現在は二児の育児の傍ら、インタビュー記事や、商品紹介のキャッチなど、また文字の世界へと戻る。