freeeのサービス基盤を支える──挑戦の場を渡り歩いた先に行き着いた場所
2022年現在、freeeでサービス基盤の責任者を務める河内。これまで多様な経験ができる場所を求めて、NEC、Google、IndeedとIT企業を渡り歩いてきました。そんな河内の軌跡と、これからfreeeで成し遂げたいことを紹介します。
シリコンバレーを肌で感じたことが、人生の転機に
河内がコンピューターに出会ったのは、小学6年生のころ。その楽しさに取り憑かれた河内は瞬く間にプログラミングにのめり込んでいきました。
河内 「最初に買ったパソコンは、自分でプログラムを書かないと何もできない空っぽの機械でした。それから中学・高校時代と、パソコン雑誌に掲載されているプログラムを打ちこんで遊んでいました。これが楽しかったんですよね。勉強しながら少しずつ自分でもプログラムを作れるようになっていきました」
高校卒業後、興味の向くまま、大学の工学部・情報工学科に進学した河内。大学院を卒業し、就職先に選んだのはNECでした。この頃、世の中にLinuxというオペレーティングシステムが出回り始めます。
河内 「社内でも『これからLinuxとオープンソースをやっていくぞ』という感じで、私を含め若い社員も新規事業にどんどんアサインされました。64ビットのプロセッサが出たので、それに対応するための開発が始まったんです。
NECは、基本的にはハードウェアを作っているベンダーなので、新しいプロセッサが出た時に、それに対応する新しいハードウェアを作って、既存のOSがちゃんと動くのか評価したりするわけです。Linuxはオープンソースなので、サポートも無い分、自分たちで触って学ぶことが必要でした」
それからしばらくLinuxの開発に取り組んだ河内。今後のキャリアを左右する転機が訪れたのは、NECに入社して3年が経過した頃でした。
河内 「米国のIntelの本社に、『Linuxのカーネルサポートを拡充するためのプロジェクトに参加する』という名目で出向することになったんです。シリコンバレーの空気を肌で感じながら英語で仕事をす ることは、全てが刺激的でした。
私はそれまでなんとなく大学に進学し、なんとなくコンピューターサイエンスを学び、親が喜ぶような大企業に入るという選択をしてきました。一つの会社で定年まで勤め上げた父親の影響もあり、漠然と自分もそういう人生を歩むんだろうなあと思っていました。
しかしシリコンバレーでの経験で、視野が広がったんです。世界は広く、いろんな職が存在していることを知り、終身雇用に縛られずさまざまな経験をした方がよりよい人生を歩めるんじゃないかと考えました。これから自分がどんな仕事をし、どういう風に成長していきたいかというキャリア観のようなものが芽生えたんです」
帰国した河内は、自己成長のため転職を考え始めます。
ソフトウェアエンジニアの経験を活かしつつ、仕事の幅を広げていく
そのころ日本ではmixiやサイバーエージェントなどITベンチャーが盛り上がりを見せていました。勢いのあるベンチャー企業も視野に入れるなか、河内が最終的に選んだのはGoogleでした。
河内 「転職活動を進めるうちに、日本にもGoogleのオフィスがあることに気が付いて、受けてみることにしたんです。
当時のGoogleは2004年にIPOを終えたところで、テック業界では存在感がありました。憧れのスタートアップ的な雰囲気とミステリアスな雰囲気が同居していたんです。
主なプロダクトは検索エンジンでしたが、そこからGmailやGoogleマップなどのWebアプリケーションが登場し、次は何が出てくるんだろうってワクワクし ていたのを覚えています」
NEC時代はハードウェアやOSなど基幹的なものに携わっていた河内。Googleでは、その一段上のアプリケーションやサービスの開発を担当することになりました。
河内 「始めはGoogleサジェスト(Googleの検索窓に入力したキーワードと関連性のあるキーワードが自動で表示される機能)の機能を開発するプロジェクトに入りました。
それからGoogle Chromeのレンダリングエンジンの開発に携わりました。ブラウザにおけるレンダリングというのは、HTMLやCSSをネットワークから取得して、そのコードを画面で表示する画に変換する作業のことです。レンダリングエンジンは巨大なプログラムで構成されていて、私はJavaScriptの一部のAPIの開発をしていました」
Googleでの充実した日々。働き始めて10年が経った頃、河内は自分の人生を振り返り、さらなる転職を決意します。
河内 「人生の中で仕事をする時間が40年くらいあるとして、その半分を過ぎたところで、将来を思い描いてみたんです。
今まで基本的に『ソフトウェアエンジニア』をやってきて、残りもその延長線上でやっていくのか、それともソフトウェアエンジニアの経験を活かしつつ仕事の幅を広げていくのか——、私は後者を選ぶことにしました。
Googleのように会社が大きくなれば、ソフトウェアエンジニアとしてはより専門的な部分で勝負していかざるを得なくなってきますが、それより広い視野を持って仕事をできるような場所に行ってみたいという思いがあったのです」
河内が次のステップとして選んだのはIndeedでした。
河内 「Googleと比べると規模的には小さかったので、成長フェーズで幅広い経験ができるかなと思いました。
また、これまでの経験で、大企業には能力はあるけれど、それを生かしきれてない人もいてもったいないなと感じていました。
そこで、Indeedは転職の紹介サービスなので、よりプロダクトの利用者が増えることで、人材が適切な場所で活躍できる社会に近づくんじゃないかと考えたんです。自分が開発に携わったものが、社会のどこかで価値をもたらすかもしれないと思うと嬉しいじゃないですか」
河内はソフトウェアエンジニアとして入社し、会社の収益の大部分を支える広告システムのバックエンド(広告主向けの機能やAPIの開発)を担当しました。
エンジニアのスピーディーで本質的な開発を実現するために
Indeed入社後、河内はスカウト経由でfreeeと出会い、さらなる転職を決意します。
河内 「これまで経験してきたソフトウェアエンジニアとしてではなく、サービス基盤開発エンジニアのチーム責任者としてのスカウトでした。
freeeについては、CEO佐々木 大輔がGoogle出身なので知っていましたし、エンジニアにも知り合いがいました。
入社を決めたのは、会社が成長フェーズなのでいろいろと経験ができそうなこと、社会的に意義のあるプロダクトを作っていることに加え、今までのソフトウェアエンジニアとして の経験を活かしつつ新たな領域にチャレンジできることと、エンジニアの成長を支援できるマネジメントのポジションがあったことも大きいです」
こうして2021年5月、freeeに入社した河内。まずは実際に手を動かし、freeeの業務をキャッチアップしていきます。
河内 「はじめに開発のプロセスを理解するため、ひとまとまりの機能の開発タスク(サポートとのデータ受け渡し機能の共通化)を任されました。開発からリリースまでの一連のプロセスを経験することで、freeeでのフロントエンド・バックエンドのコードの書き方や開発カルチャーについての理解を深めました。
その後、いったん『freee人事労務』のチームへ留学(在籍チームは変えずに期間を決めて別のチームの業務を体験してみる制度のこと)し、既存機能のリファクタリングを集中的に行うプロジェクトに1カ月ほど参加しました。freee内でもチームが違うと異なるスタイルで開発をしていたりするので、その中での共通点や問題点などを肌で感じるための仕組みでした」
2021年10月、サービス基盤チームにジャーマネ(※)としてアサインされた河内。サービス基盤の役割と、業務の目的について語ります。
(※freeeにおけるマネージャとは、単にメンバーの上に立つ者のことではなく、”タレント”であるfreeeのメンバーを叱咤激励し、成長・活躍をサポートする役割。その思いを込めてジャーマネと呼んでいます)
河内 「これはどの会社も成長フェーズで直面する課題なのですが、プログラムは機能が増えるほど大きくなっていき、だんだん保守・運用が大変になってきます。すると、どうしても開発スピードが落ちてしまう。
サービス基盤は、プロダクト全体を細部まで把握した上で、開発スピードを落とさず済むような設計を考え、開発することが業務になります。目的はもちろんプロダクト開発チームを保守・運用から解放し、本質的な作業に集中してもらうことです。
そのために、現在動いているサービスを停止させないことや、管理コストをなるべく増やさないことは念頭に置いた上で、新しいサービスや機能を楽に早く追加していくための汎用的な共通部分をデザインし、作り、各チームに提供しています。
なのでサービス基盤のお客様は、広義ではもちろんプロダクトのユーザーですが、狭義ではfreee社内にいる他の開発者です」
「今」のfreeeでしか経験できない仕事がある
(▲家族旅行でシリコンバレーへ)
河内は、今まさにサービス基盤チームが取り組んでいる業務について語ります。
河内 「これまでfreeeで開発していたプロダクトは、モノリスと呼ばれるひとかたまりのサービスとして開発運用されてきていましたが、今はより小さいマイクロサービス群へと段階的に移行しているところです。
今後さらにその数を増やしていくため、今はその共通部分を繋ぐAPI連携の標準を作っています。それに加え、サービス間のメッセージングで処 理を非同期にしたり、さらなる疎結合化を進めたりしています。一つのシステムを構成するサービスの数が増えてくると、それらを効率よく管理し安全に運用するためにサービスメッシュなどの技術を導入することになるでしょう。
こうして小回りが効くようになり、社内全体の開発速度が上がると、お客様に価値のあるサービスをスピーディーに届けることができます。ゆくゆくは標準化によって浮いた時間やコストを、より本質的なことに投資することもできるので、プロダクトや会社の価値そのものを早く大きくすることにも繋がってきます」
一般的に難しいと言われているサービス基盤の業務。背景には、求められるものの多さがあると河内はいいます。
河内 「大学で習うようなコンピューターサイエンスのバックグラウンドに加え、フロントエンド、バックエンド、AWSクラウドインフラ活用など、場面場面で適切な判断をしていくには必要な知識・経験が膨大になるからです。もちろんこれが一人で完璧な人などそういるものではないので、強いチームを作らなければいけません。
高所から全体を把握し、どうやってマイクロサービスに分割するか、それをどういう形で実現していくのか。無数に正解がある中で、時間や工数の制約も考えながら全体を最適化できるように方針を定めるのには、何が良くて何がダメなのか難しく重い判断を迫られることがあります。
それがうまくいけば、小さな変更であっても社内の全開発者の生産性にインパクトを与えるような仕事ができるわけで、チャレンジが大きい分得られるものが大きい。サービス基盤の仕事はそんな仕事だと思っています」
最後に河内がこれからの目標を語ります。
河内 「チームの人数はまだ少ないので、これまではプレイングマネージャーとして手も動かしながら、チームの長期プランニングや四半期のOKR作成、レビューなどを行ってきました。
これから組織が拡大しても、メンバーの力を合わせて最大限のインパクトを出せるような、方向を示した上でチームを引っ張っていけるような、そんなジャーマネになっていきたいです」
freeeはスタートアップらしい速度を重視したプロダクトの開発体制から、組織が拡大していく中でも効率よく速度を落とさずにユーザー価値を追求できる開発体制へと変革している最中です。
サービスを大きくしながら幾つもの技術的課題にぶち当たるのが目に見えていると河内はいいます。
河内 「逆に言えば、解決することで会社全体で前に進み、ユーザーにとっての価値を生み出していける感覚を経験できるということです。このような今のフェーズでしか味わえない課題にはエンジニアとして挑戦しがいのある、魅力を感じるものが多いです。
また私は、自分がする仕事で誰かをハッピーにし、それを見た自分もハッピーになれることが理想です。世の中には色んな人がいて、色んな仕事があって成り立っているので、無理をせずに自分に合った職業で働いて社会が成り立っていけるような世の中であってほしい。freeeのプロダクトにはそんな世界を実現できる可能性を感じています」
多様な経験を求め、自身のキャリアを切り開いてきた河内。これまでに培った経験は今、freeeで存 分に発揮され、freeeを支える礎のような存在です。その礎をさらに盤石にすべく、河内の挑戦の日々は続きます。