もっと知ろう- 開発グループと組織全体 編 -

<目次>

連日連夜、滝汗日和の真夏日が続きますね。

自分としては、夏が大好きなので野外でPCに汗がしたたるくらいでも平気なのですが、流石に意識が朦朧として生命の危機を感じた時には麦茶がぶ飲みしています。

週末には、都内のとある野外プールにPCと本を持っていったところ、あやうくPCで火傷するところでした。さらにはプールの水温がぬるい温泉のようで、全く涼を味わうことができませんでした。

エクストリームに生きながら、ココナラの技術統括をしている岡本(イエローパーカー)です。

(写真はココナラ キャンプ部 14名で1泊2日のキャンプをした時の風景。本編とは無関係) f:id:coconalainc:20180724112152j:plain

ココナラキャンプ部

今回は、そもそもココナラのことをもっと知ってもらうのがよいのではないかと思い、色々と書いていこうと思います。

技術ドヤーッ!弊社ドヤーッ!!オフィスドヤーッ!!!感のブログって途中でお腹いっぱいになるのと、抑揚がなく読んでても面白くない、、あと、正直ベースで書くのが読んでくれている方との距離感を縮める最速かつ最良の方法だと思っています。

(人事や広報のメンバーには、やっかみがられるかもしれません。。)

一部、ドヤーッ!がありますが(笑)、それは本当に正直ベースなのであらかじめご了承ください。

開発グループのこと

まずは、組織全体のお話が必要かと思います。

ココナラは、以下のような組織構成になっています。それぞれのグループについては、また別の回のブログに記載したいと思いますので、今回は開発グループとココナラ組織の特徴についてピックアップしようと思います。

こうみると社員50名の会社にしては、機能ごとに役割が細分化されています。

主務を明確にしてフォーカスすることで、プロフェッショナリズムを発揮しやすい組織づくりを目指しています。

ココナラ組織図
組織図

開発グループには、全エンジニアが所属しており、弊社で唯一の横断組織となります。

そして、上記でニコちゃんマークがついている各グループにエンジニアが主管グループとして業務をしています。それぞれのミッションは各グループマネージャと決めて開発をしています。

開発グループは、開発の資産化、共有、技術アプローチによる既存課題の解決、新しい技術へのチャレンジなどが主なミッションになっています。

そのミッションは、OKRという手法を用いて行なっています。GoogleやFacebookなどでも採用され、無駄を削ぎ落として実践することによって目標と結果を明確にし、プロセスを管理/評価するメソッドです。音速でPDCAを回すことと現代のwebのアジャイル的な対応にも非常に適していると思っています。

良い事も悪い事も知る。話す。

ココナラのサービスは、2012年にサービススタートして、今まで追加開発をひたすらし続け、皆さんに広く使われるサービスへと成長しました。

と、ここでエンジニアの方なら、ピン!ときた方もいるんじゃないでしょうか? そうリファクタ、アーキテクチャー、バージョンアップなど、どうしているんだろ?という疑問わきましたよね?

まさにその通りです。

事業会社"あるある"かもしれませんが、サービス追加開発をし続けたために、2015年以降様々な箇所に弊害がでてきました。 これは、紛れもない事実ですので、採用の場面での面談や面接の際にも包み隠さず全部お話をしています。

弊社はいま全力でRuby on Rails(以下Rails)への移行を進めているのですが、

  • なぜRailsへの大規模移行を行なっているのか?
  • なぜAPIGatewayをベースにマイクロサービス化を推進しているか?

などなど全てお話しています。全部です。 技術的負債やココナラは他の会社よりここが優れているなど、もう全部!

全てを正直に話すこと、これはチームビルドにとっても大切なファクターの一つだと思っています。

「オープンを当たり前に」

弊社の「7 Standards」の一つです。新しく入られる方にも、既にエンジニアとして社内でバリバリ開発しているメンバーにも、当たり前ですが情報は公平にオープンにしてます。

新しく入る方にとっては、ココナラを正しく知る唯一の方法は、会社の社員と話すことしかないのです。

口コミサイトや転職情報サイトなど会社を知る方法は色々あると思いますが、1次情報ではないため、情報が偏る傾向があります。 会社、そして新しく入られる方は、お互いにwin - winである必要があります。ですので面談の冒頭では、上記で記載したことは必ずお話しています。

弊社エンジニアは、現状を常に理解・把握しています。そのため、事業成長に必要な技術を選定し実践すること、負債を改修する検討をし、優先の順番付けをして対応しています。


そのマイルストーンを積極的に共有する事。新しい言語や技術を調べ勉強会を開く。などエンジニアとして当たり前をちゃんと行う!これがココナラのエンジニア文化と言えます。

弊社のサービスは、CtoCビジネス、且つ無形資産”スキルをやりとりする=スキルシェア”という世の中的には説明が難しいものです。さらに、それぞれの情報の粒度も細かかったり、濃かったりします。

ですので、良い事も悪い事もフルオープンにして、チームビルドに日々取り組んでいます。ココナラの成長は、この要素が良い方向で働いているからなのだと思います。他にはどんなココナラ 7 Standardsがあるんだろうと思った方は、こちらもみてみてください。

coconala.co.jp

ココナラ 7 Standards

皆Tech!?

- Githubアカウントを全員持つ者達-

弊社では、社員全員Githubアカウントを持っています。

理由は2つあります。

1点目は、プロジェクト管理及びチケット管理にZenhubを使用しているためです。

2点目は、レビューフローがしっかりと機能しているためです。例えば、カンパニーサイトなどの運用を広報にそのまま任せています。 プレスリリースをあげてくれれば、開発エンジニアが内容を確認し、マージとデプロイを行う。そういう一連の流れができています。

また、あれ?と気づいた人がいるかもしれませんが、カンパニーサイトのCRMとかってないの?など。

当然あるのですが、弊社は急成長ベンチャーでもあるため、掲載情報の種類が多岐に渡ってきます。

そうした時に、CRMの改修を行うか?といえば、全体最適を考えた上で、他にやりたい事がたくさんある!と判断をします。こういう環境で運用していますので、必然的に、広報や人事でもマークアップし、改修や変更をするようになったのだと思います。

- SQLとBigQueryを全員平気で使いこなしごついクエリーも書ける者達-

私がこの会社にジョインして一番驚いたのが、全員、SQLを書いて分析や作業を遂行している事です。

最近のベンチャー”あるある”で、一度は似たような話を聞いたことがあると思います。

実際は、「話がしやすいエンジニアにSQLの質問やレビューが集中して、その人の作業が滞っている!」といった事が多いと思います。 なので入社前までは、「他のベンチャーと同じで、対外的なアピールとして言っているのでしょ?」と本気で思っていました。が、、、

これは、ガチです。

というか、

Select id,hogename from t_hogehoge where t.id = 1 とかシンプルなSQLではないのです!テーブルのジョインの数、関数の使いこなし、サブクエリーもサラッと。

とにかく、エンジニア以上にごついクエリーを書くのです。Railsに慣れている人ならわかると思いますが、生産効率を爆速であげるActiveRecordに慣れてしまうと、1からSQLをゴリゴリ書く事がだんだんと面倒に感じてきます。

そうした時に、エンジニアの手を借りずにサービス向上のためにSQLで分析している仲間がいるのは、頼もしい限りです。

KPI、KGI等Dailyで全員チェックしていますが、当然、RedashやDOMO等といった分析・BIツールも利用しています。施策を行なった後にすぐ確認したい場合、テーブル構造さえ理解していると、誰でも見たい縦軸横軸で確認ができます。DOMOのカードの設定もいりません。RedashにSQLを書き設定し、ダッシュボードで管理し、常に新しい切り口で確認し、次の施策の検討材料にすればいいのです。

音速PDCAの秘密

ココナラの文化に大きな影響を及ぼしていると思う点として、言語が共通化されている事が大きいと思います。

「この数字をカテゴリー毎にとりたいのだけど、カテゴリーテーブルのparent_idが○で且つ、lftとrgtの値が○でとれるかー。とりあえずまずは分析チームでやってみるよ。」

「ポイントって新しくテーブル作ったのでしたっけ?」

「監査に必要なので、Confluenceに書いているテーブル定義、最新でしたら経理チームで見て見ます。」

意思決定から実装・実行までのスピードが速いのは間違いなく、音速でPDCAが回せる=ゴールへ最短距離で走れる組織であると思っています。

CtoCは、ユーザーと会話し、それに対応し、改善し、その間にも新しい仕組みやプロダクトを検討していく。の繰り返しです。が、微妙な開発のサイズ調整、ビジネスのスキーム調整など、変化に対応できる組織であることがとても大事になってきます。

上記に記載したように開発グループは、個々人が主務としての役割をもちつつも、フルスタックに近い動きをしています。私も含め、完璧なフルスタックとは言えませんが、タスクの内容を鑑みると60%以上の役割配分で開発エンジニアはフルスタックに近い動きをしています。自然とそうなったというのが、表現としては近いかもしれません。

まだまだ、ココナラは、やるべきこと、やりたいことが沢山あります。開発エンジニアでこのブログを見て、少しでも面白そう!って思った方は、以下からお声がけください。

採用の場面では、会社と人は受かった落ちただけの関係ではなく、縁です。事業に共感ももちろん大事ですが、やはり組織は人です。

「ここでこの人達と働いたら人生面白いことになりそう!」 「技術チャレンジってどうやったら事業と直結できるんだろ?音速でPDCA回したら答えでるのかな?やってみるか!」

仕事をする仲間がイイ奴っていうのはとても大切ですし、こういった事を会社がちゃんと理解し、承認していることも、働く環境としてとても大事です。「信頼して任せる」 お互いを信頼できる仲間(イイ奴)を今後も仲間としてむかいいれていきたいと思っています。

おわりに

成長し続けるCtoCマーケット + 全ての人をエンパワーメントするココナラに興味を持っていただけましたでしょうか。
少しでもココナラの開発グループと組織全体のことを理解していただけたなら嬉しいです!
ココナラではエンジニアをめちゃめちゃ募集していますので、ちょっとでも興味をもってもらえましたら、オフィスに遊びにきてください。気軽にお話しましょう!

f:id:coconala_Show:20180607160352j:plain

開発グループ募集一覧 www.wantedly.com

www.wantedly.com

www.wantedly.com

www.wantedly.com

どんな状況であっても、必死に考えて、必死に行動できる人と一緒にサービスを伸ばして、うまいお酒が飲みたいです(笑)。

これ前回も書いていますが、書き続けます(笑)