noteのBtoB基盤チームとは? - note proは社内ベンチャーの空気感で作られている
「どんな法人でも快適に使えて、成功体験ができる環境をつくる」
noteでは法人向けのサービスとして、note proを提供しています。note proを利用すると「独自ドメインの設定」や「アナリティクス」、「クリエイターページのカスタマイズ」など、様々な機能を使用することができます。
note proは法人向けの機能を提供しているため、noteとは異なる開発を行っています。note pro開発を担当しているBtoB基盤チームのリーダーである和田さんが「noteという会社の中にある小さいベンチャーで働いてるイメージに近い」と例えるほどです。
noteとnote proは開発においてどのような違いがあるのでしょうか。チームリーダーである和田さんに、BtoBチームの働き方を解説していただきました。
■和田 良太 / BtoB基盤チームリーダー
アイティメディアにてコンテンツ配信開発などを経験し、2019年4月にnoteに入社。noteではCloudflareやfastlyの導入などを行い、2020年にBtoB基盤チームのリーダーに就任。現在は、法人向けのnote pro開発を主に担当。
※ この記事のチーム編成は2021年11月時点のものです。
BtoB基盤チームは「noteという会社の中にある小さいベンチャー」
ー まずはBtoB基盤チームがどんなチームであるか、お聞かせください。
BtoB基盤チームでは、法人向けのnote proの開発や、note proの運用に関するSaaSの導入や連携などを行っています。法人がお客様ということもあって、noteとは少し違った開発がメインになります。例えば、「独自ドメインが設定できる機能」の開発とか。通常のWeb開発ではあまりやらない領域に着手することもあります。
他にも監査対応やビジネスチームのサポート、社内の業務効率の自動化なども行っています。社内業務の手助けを僕がやりたくてやっているため、開発が手広くなってしまっている部分もありますね(笑)
ー 様々なことに着手されているんですね。
そうですね!ですので、1つの業務に集中するというよりも、タスクによってコンテキストスイッチをうまく切り替えられるひとがチームに合っているのかなと思います。技術的にも、インフラ、サーバサイド、フロントだけでなく、SaaS導入なども行うため、様々な知識を必要とするチームでもあります。
ー 法人向けのnote proとnoteでは、開発に大きな違いはあるのでしょうか?
noteとは違って、「すばやく機能をだす」ことや「100万件のレコードをさばく」ような開発ではありません。逆に、一人ひとりのお客様にさらに深く寄り添うイメージに近いです。一度の失敗でお客様の信用を失ってしまい、note proというブランドを傷つける可能性もありえるため、お客様の要望を叶えつつ慎重に進めていく必要があります。
ー note proの開発において難しいと感じる部分はありますか?
誰でも理解ができて、使いやすいものを開発する必要があるのは難しい点ですね。note proのお客様の中には、ウェブに触れてこなかった方もいるため、「独自ドメイン」という言葉が理解できない場合もあります。誰もが使いやすくて、わかりやすいものを作るということには頭を悩ませるところです。
ー 法人向けサービスの開発となると、他チームとの関わりも多いのでしょうか?
note proはビジネスチームとは密に連携をとって作業を進めています。ビジネスチームは優秀な方が多く、お客様の要望と内部の事情を踏まえたうえで提案をしてくれるため、本当に助かっています。
ー ビジネスチームと一緒にnote proを作り上げているイメージでしょうか?
そうですね!開発もnote本体とは切り離されている部分も多いため、「noteという会社の中にある小さいベンチャー」で働いてるイメージに近いです。2年前にnote proという小さいサービスを始めて、みんなでわいわいと作っているみたいな。
ー なるほど!そんな小さなベンチャーがチームとして目指しているものはあるのでしょうか?
最終目標は「どんな法人であっても快適に使えて、成功体験ができる環境をつくる」ことです。ただ、まだまだnote proは使いづらい部分も多く、noteらしい「誰もが使いやすい」という価値をあまりだせていないのが現状です。様々なお客様をお手伝いできることが目指すべきところかなと。
note proはSaaS連携で成り立っている
ー SaaSの導入の具体的な事例を教えてください。
Zuoraやマネーフォワードケッサイ、Cloudflareなどを導入しています。note proは複数のSaaSを連携することで成り立っているため、APIのカスタマイズをして開発や業務で使用できるようにしています。
僕たちが命だと思っているのは、Zuoraやマネーフォワード ケッサイなどの契約・請求周りの連携です。数字の妥当性を保って、お客様に正しく安定した請求ができるように心がけています。
決済周りはnoteとは切り離して開発ができるように、SaaSを導入してシンプルな構成にしています。SaaSを利用すればブラウザからレポートの閲覧や契約管理もできるため、少人数でサブスクリプションモデルのサービスを開発するには理想的な形だと考えています。
Cloudflareはセキュリティの用途だけではなく、TLS証明書の発行や更新管理でも利用しています。note proでは独自ドメインが利用できるため、頻繁に証明書の発行が行わるため、Cloudflareに処理を任せることにしました。
ー SaaS導入したあとに、社内のビジネスチームからカスタマイズの要望依頼はくるのでしょうか?
法人の契約者数が増えていくに連れて、当然ながら要望も増えていきます。100%すべての要望に答えることは難しいかもしれませんが、様々な企業の多様性に応じられるように改善していきたいと思っています。
ー 「多種多様な企業に対応」となると、カスタマイズの種類が膨大になってしまわないでしょうか?
特定の個人だけに合わせて開発をすることは基本的にはありません。しかし、大企業や公共団体は特有の事情があり、契約がむずかしいケースもあります。そういった企業に合わせた業務フローの効率化をすることで、同じ業種の方々がスムーズに運用できるようになっていきます。
ー SaaS連携において課題に感じている部分などはありますか?
Zuoraの導入などは僕が1人で行ったので、属人化してしまっている部分があります。ナレッジを共有し、誰でもわかる状態にする必要があるなと。
あとは、契約してくださってる方々へのオンボーディングやサポートの強化をもっと行っていきたいと考えています。今までは請求や契約などの足場を固める作業が中心でしたが、カスタマーサクセス側の改善に力を入れていきたいと考えております。
技術スタックについて
ー note proで使用する技術スタックについて教えてください
基本的にはnoteの開発とほとんどおなじです。バックエンドは主にRailsで、一部のバッチではGoを使用しています。フロントエンドはVue / Nuxtを使用しています。
ー 「一部のバッチはGoを使っている」という話ですが、いずれはAPIなどもGoに移行する予定なのでしょうか?
今のところはないと思います。以前にAPI周りをGoで書いたこともあったのですが、DBへの接続も含めnoteの既存システムとの連携がが複雑になりがちで開発の効率が悪くて。ただ、今はSaaS間の連携が増えてきて、noteのシステムの結合をしない部分の開発が増えてきているため、そこはGoで書いていくのもいいかなと思っています。
ー 技術選定はどのように行っているのでしょうか?
基本的にはなんでも挑戦できるチームだと思っているので、メンバーがやりたいことは積極的に取り入れていこうと思っています。そもそもGoもチームのメンバーが使いたいというところから、話し合いをして開発に着手しました。もちろん将来的に負債にならないことは前提ですが。
ー フロントエンドの開発について、noteと違う点はありますか?
バックエンドはnoteと一緒になっている部分があるのですが、フロントは完全に別のリポジトリで切り離して開発を行っています。note proはまだコード量も少なくて複雑な構成ではないため、モダンな技術が取り入れやすい環境だと言えます。新しいライブラリを試す場としても使用することができ、「Nuxt3への移行はnoteよりも先にnote proで実験的に行う」などにはうってつけかなと。
ー 技術的な負債になっている箇所はありますか?
BtoB基盤チームができる前に、僕が勢いで導入して開発した機能がいくつかあるので、効率の悪いコードはいくつかあります。Zuora連携のリファクタとかはやりたいですね。
あとはそもそもnote自体のコードがかなり肥大化しているるため、モジュラモノリス化してコードの改修ができないかなどは考えています。
何事にも興味を持てることは大事
ー 話を聞いていて、業務の幅が広いチームだなと感じました。
チームとしては、「複数人でパラレルで開発する」というよりは、「1人が並列で複数の開発を担当する」というイメージに近いため、1人でやれることの裁量は大きいかもしれません。
ー 今、働いているメンバーはインターンからの採用された方もいらっしゃいますよね。
note proはnoteよりもまだまだ出来たばかりのサービスでコードも薄いので、インターンの方の力試しとして向いている環境でもあるかなと思っています。もちろん元インターンのチームメンバーは超優秀なので、こちらとしては絶対に来てほしいという想いはありました(笑)。
ー どんな方がチームに向いていると思いますか?
1人が複数のタスクをこなすので、マルチタスクにいろいろな業務がやりたいひとには向いていると思います。「作業に詰まったときに、他の作業をやることで息抜きになる」ひととか。僕がそうなんですけどね(笑)
あとはコミュニケーションをとるのが好きなひとですね。エンジニア以外のチームと関わることも多いため、コミュニケーションを苦に思わないかどうかは大事かなと。むしろ、エンジニアにしか伝わらない話をほぐしていって、他のチームに伝えることに喜びを感じられるひとこそ向いています。ワイワイやってる社内ベンチャー感は保っていきたいので、ちゃんと連携がとれるといいなって。
ー 逆にチームに向いていないのはどんな方なのでしょうか?
先ほども言ったように、マルチタスクでの作業を要求されるチームなので、集中して1つの機能を突き詰めて開発したいひとには合っていないかもしれません。様々なタスクに柔軟に対応できる方がいいかなと。
ー 技術的なレベルについてはどうでしょうか?
もちろん技術力があることは大事ですが、そこまでは専門性を求めていません。逆にこちらで説明して覚えていってもらうこともリーダーの仕事かなと思っているので。だから、教えたことを理解してくださる姿勢を見せてくれるひとがいいのかな。
ー 最後にBtoB基盤チームに興味を持ってくださる方に向けて一言よろしくお願いします。
契約してもらっているお客様に快適に使ってもらうことに喜びを感じてもらえるひとと一緒に働きたいと思っています。また、「監査って何をするんだろう」「ビジネスチームってどうやってお客さんと契約しているんだろう」など、何事にも興味を持てることは大事かなと思います。そういった疑問を解消することで、より使いやすいnote proになると思っているので。コミュニケーションをとるのが好きで、1つ1つの業務に興味を持てる方がいたら、ぜひよろしくお願いします。
▼エンジニアの記事をさらに読みたい方はこちら
▼noteを一緒に作りませんか?