freeeの開発者ブログのはじめかた

こんにちは、freee株式会社でエンジニアをやっている id:ymrl です。

はやいもので、2018年も残すところ1ヶ月となりました。12月といえば年末調整とAdvent Calendarですね!というわけで、この記事はfreee Developers Advent Calendarの1日目です。今年もまた12月25日まで毎日リレーで記事を掲載していきます。お楽しみに!

freeeのオフィスに置かれたアドベントカレンダーの写真

さて、今回は開発者ブログ、つまりこのfreee Developers Blogの話をしようかなと思います。いちおう私は社内ではfreee Developers Blogの編集長を自称しているのです。

開発者ブログを始めるきっかけ

このfreee Developers Blogが始まったのは2017年1月ですが、開発者ブログをやりたいよねという話題はもっと前から何度か出ていました。しかしまだ会社が小さく人数も少なかった頃には「最終更新日がだいぶ前のブログが放置されていると読者にマイナスの印象を与えてしまいそう」「それなりの頻度で更新しようとすると負担が大きそう」といった懸念からあえて手を出さないようにしていました。

そんな状態を数年間続けるうちに、だんだんと開発者ブログがないことによる問題が見えてくるようになってきました。それはエンジニアの採用面接を受けてくれるような人が、最近のfreeeの開発チームの使っている技術や雰囲気について知ることが難しいということでした。

当時はWeb上でfreeeの開発チームについて書かれた情報はあまり多くなく、しかもエンジニアが十数人くらいの時代にCTOの横路や従業員第一号の平栗が受けたインタビューがいちばん目立っているという状態でした。エンジニアの数がその頃の何倍にもなっていて新しいものもたくさん取り入れて変化してきた時代とは、創業間もない頃のインタビュー記事はギャップがありすぎました。freeeはせっかく開発チームを盛り上げて良いサービスを提供するための色々な取り組みをしているのに、そういうものをなかなか外に発信できていないという状態になってしまっていました。

2階から見下ろしたかたちでの集合写真。おそらく100人以上の人が写っている
freee Developers Blogをはじめた頃の全社集合写真

そういう状況をなんとかしようというミーティングに、私は「なんとなくそういうの好きそうだし詳しそう」という理由でなんとなく呼ばれ、その場でなんとなく「そろそろブログやってみるか」という話になったのでした。「人数も増えたしどうにかなるでしょ」みたいなことを言っていたはずです。

はてなブログを使う

現在、freee Developers Blogははてなブログで運用されています。「Webエンジニアならブログくらいチャチャッと自分で作ってなきゃアカン」という気持ちがなかったわけではないですが、構築するのもメンテナンスするのも手間だし、なによりもそれが目的化して発信が二の次になりそうで危ないのでブログホスティングサービスを使うことにしました。

はてなブログにしたのは主に以下の点からでした。

  • WYSIWYGではなくMarkdownで書ける
  • コードのシンタックスハイライトに対応している
  • 独自ドメインで使える
  • 個人で以前から使っているのでだいたいの使い方がわかっている
  • 技術系の人がよく見てそうなイメージがある
  • 他社の開発者ブログに使われている実績がある

独自ドメインは有料版(はてなブログPro)の機能ですが、毎月払いだと月々1008円、2年分払うと1月あたり600円です。自前で構築してメンテナンスなんてことを最初から考えなくて本当によかった。

はてなブログの利用開始にあたってははてなのサポートに問い合わせ、法人として共有のはてなアカウントを取得するのが問題ないことを確認して、もし自分が異動や退職で引継ぎが発生してもいいように社内の開発者のメーリングリストのメールアドレスで登録しました。実際の投稿作業などは個人のはてなアカウントをブログメンバーに追加して行なっています。

ブログの名前を決める

ブログをはじめるために、他の会社さんの開発者ブログをかなり参考にしたんですが、多くの会社で “Tech” ”Engineer(s)” をブログの名前に冠していました。そして、freeeではあえてこれらを使わないことにしました。

というのも、何百人もいる会社なのにエンジニアと非エンジニアとの距離が近く、開発職でない人もしばしば開発に深く関わることもあるのがfreeeの特徴なので、開発者ブログに出てくるのがエンジニアだけなのはもったいないという思いがあったからです。そういう理由で “Developers” を冠することにしました。

名前のおかげなのか、カスタマーサポートの人がチャットサポートで運用されているChatBotの記事を書いたり、営業職の人が音声で会計freeeに入力をする記事を書いたりする感じにできたのは良かったなと思っています。

ただし、名前のおかげでブログ開設してすぐの頃は「freee エンジニア」で検索しても辿りつけない状態になって、あわててmeta要素のkeywordsとdescriptionを設定したりしました。あと、社内の人ですら “freee Developer Blog” とか “freee Developer's Blog” とか微妙な表記ゆれを書いてしまうのでけっこう困っています。

編集方針を決める

このあたりを決めると同時に、社内のQiita:Teamに「開発者ブログをやりたいと思っている」という記事を投稿してみました。すると社内のいろいろな人から「こういうブログにしたい」という話や、「内容のチェックや事前申請が大変だとモチベーションが下がってしまう」というようなアンチパターンが集まってきました。

それらを事前に考えていた分と合わせて、以下のような方針としました。

  • 月2回くらい、2週間に1度くらいの頻度で更新するのを目標にする
  • 検証がしんどい記事は無理して載せない
    • その記事のためにサンプルコードを用意したりするのはしんどい
    • 「こんな取り組みをしています」「これにこんな技術を使いました」みたいな内容なら検証が要らない
  • 書く人のキャラクターを出す
    • 記事の冒頭でかならず自分の名前を出して挨拶してもらう
    • 文体や表記のしかたなどは本人の書き方に任せる
  • 書く人のモチベーションを下げないようにする
    • 執筆ノルマを作ったりしない
    • 無理にPV数やはてなブックマーク数を競ったりしない
  • 最低限の内容チェックをDevelopers Blog編集部で行い、必要に応じて詳しそうな人にもレビューしてもらう

特にPV数やはてなブックマーク数を競わないのは、発信内容のクオリティを守る意味でもモチベーションを保つ意味でも大事なことだと個人的には思っています。

さて実際のところどれくらいこの通りにできてるかというと……特に頻度に関してはぜんぜん守れてないです。それでも「freeeという会社にこんな人がいて、こんなことをやっている」という発信にはかなり貢献できているんじゃないかな、と思っています。

freeeの開発チームのことをもっと知れるイベントをやります

最後に告知です。freeeの開発チームのことをもっと知ってもらいたい!そしてfreeeの外にいる技術者ともっと交流をしたい!ということで、 freee Tech Night というイベントを開催します!

freee-tech-night.connpass.com

記念すべき第1回のテーマは「freee on Rails の今とこれからの話」。長年作りつづけた巨大サービスをどうにか効率よく開発したり、機能をmicroserviceに分割したり、新規サービスをいきなりKubernetesに載せたりする話が聞けるはずです。12月14日にみなさまとお会いできるのを楽しみにしています。

オフィスのイベントスペースの写真。広い空間で、仕事をしている人もいる
会場となる五反田オフィスの “asobiba”

さて、明日のAdvent Calendarは社内のGYOMUをハックしつづける@MiryGoAroundです。お楽しみに!