恐れずに「アウェイに飛び込め」ー ソフトウェアエンジニアが活躍できる場所づくりに私が挑む理由

竹迫良範さん近影

コミュニティの代表を務めたりカンファレンスでキーノートを任されるソフトウェアエンジニアともなれば、代名詞ともなるプロダクトやサービスを何かしら持っているものです。そういった意味で、株式会社リクルートのデータエンジニアリング組織でマネージャーを務める竹迫良範さんは少し変わったキャリアを歩んできたのかもしれません。

Webアプリケーション開発の初期にプログラミング言語Perlのコミュニティで代表を務め、Webセキュリティの領域でも活動し、今でもブログで技術的な投稿をしながら、未踏事業やセキュリティ・キャンプといった若手エンジニアの育成にも積極的に取り組んでいます。むしろ自分が手を動かしてプロダクトを作り上げるより、誰かが自由に手を動かせる環境作りにこそ熱心であるようにも見えます。

経験したことのない仕事に誘われたら基本的に断らないと語る竹迫さんが、頼まれたアウェイな機会をどのように生かして活動の幅を広げてきたのか。そして人材育成のみならず、オープンソースの開発や発表といったアウトプット活動を長年にわたって地道に続けているのはなぜか。懐かしいShibuya.pmのさらに前から現在の取り組みまで、長く広くお話をうかがいました。

エンジニアが賞賛され能力を発揮できる環境を作りたい

── 竹迫さんは若手エンジニアの育成に取り組んでいることで知られているように思いますが、本業であるリクルートのエンジニアとしては現在どういった役回りで仕事しているのかをまずお聞きできますか。

竹迫 リクルートでは4つの仕事があります。メインはデータプロダクトユニットという組織のユニット長です。リクルートにはいろいろなサービスでさまざまなデータがあり、それを社内で横断的に利活用する基盤やルールの整備、データを安全に処理する社内プロダクトの構築を行っています。2つ目は、アドバンスドテクノロジーラボ@atl_hirooの所長。AIをはじめとする新たな技術活用やR&Dに取り組んでいます。

そして、リクルート経営コンピタンス研究所での業務。社内表彰のイベントにエンジニア部門が設けられたのを機に「こんな技術を持っているエンジニアがいるから相談してみよう」となるような仕組み作りをしてきました。さらに人事でも役割があって、エンジニアが働きやすい環境を整備しています。最近では本社オフィスの改装にあわせて、コミュニケーションが円滑になる仕組みを物理的に整備したく、ちょっとしたときに声をかけやすい六角形のハニカムデスクを導入しました。

── 時間はどのように使い分けているのでしょうか。

竹迫 週に4日はデータプロダクトの業務で、残りの日でR&Dやほかの仕事。日中はほぼ会議ですね。

── 自分で手を動かすよりマネジメントの役回りが多いんですね。

竹迫 そうです。完全にマネージャー、というかマネージャーのマネージャーのマネージャーです。

── 社外でも人材育成事業などで活発に活動されていますね。

竹迫 はい。2006年からずっと講師を続けているセキュリティ・キャンプ@security_campでは現在リーダー(講師総合主査)を務めています。これからますます重要になるサイバーセキュリティに対応できる専門性を持った人材を全国で育成するため、毎年100名ほどの学生を対象に最先端のセキュリティに関する演習を行っています。

さらにIPA(独立行政法人情報処理推進機構)未踏事業でも、2016年からプロジェクトマネージャーをしています。これは日本で起業して世界を変えていくようなソフトウェアエンジニアのロールモデルを作っていこうという事業です。

── すごい若手は登場していますか?

竹迫 毎年毎年すごい若者たちに出会います。こういった若いエンジニアにどんどん活躍の機会を提供し、世の中を変えていける裁量や仕組みを用意しなくては、とあらためて感じています。

── お聞きした仕事はそれぞれバラバラに見えますが共通するところも感じます。竹迫さん自身が若手エンジニアだったころからのキャリアを通して、そのあたりを明らかにできればと思います。

勉強会の発表やOSSの開発は中長期で地道に続ける

── 竹迫さんといえば2000年代半ばにPerlプログラマーのコミュニティを牽引されたことで記憶している方も多いと思うんですが、初めてコミュニティ活動に参加されたのはいつごろだったのでしょう?

竹迫 2000年の少し前くらいでしょうか。地元の広島で情報科学系の大学生をするかたわらIT系のアルバイトをしていて、Slackware(Linuxの最初期に公開されて一斉を風靡したディストリビューション。現在も開発が続いている)を使っていた上司に連れられて参加した中国地区Linuxユーザ会(LUCK)が初めてでした。

松江でRubyを開発されているまつもとゆきひろ@yukihiro_matzさんが来られてましたし、起業した人やフリーランスで活躍している人など普段あまり接する機会のない方々もいて、ソフトウェアエンジニアのいろいろなキャリアパスが知れて刺激になりました。

── そして地元にオフィスがあるITベンチャーに就職したんですね。

竹迫 グループウェアの会社でしたが、JavaやXMLといった当時の新しい技術を手掛けられそうで選択しました。また、特定のハードウェアメーカーに縛られない、ベンダーニュートラルな仕事がしたかったこともあります。ただ実際には、なまじPerlが書けたがために、レガシーなPerlプロダクトを改善する担当になってしまったんですが。

── それは残念でした。

竹迫 ただ、それで結果的に大規模なエンタープライズ向けの製品開発に携わることになって、負荷分散の仕組みでいろいろなノウハウを得ることができたのはかえってよかったですね。とくに当時のWebアプリケーションでは、Apacheサーバーからmod_perlというモジュールでPerlのプログラムを起動するのが一般的でしたが、1万以上の同時接続をどうさばくかという課題がありました。

これをY2K(2000年問題)になぞらえて「C10K(Connection 10,000) Problem」と呼び、問題を回避して運用するノウハウを、2003年10月のShibuya.pmで発表しました。これが勉強会での登壇デビューだったのですが、この発表の内容はいろいろなところでマネされましたね。

News:Perlの強者が目黒に集結、Shibuya Perl Mongers 1周年記念テクニカルトーク

── 当時のソフトウェア開発者のコミュニティの中で、Shibuya.pmはWeb系の若手エンジニアを中心としたコミュニティの走りでした。

竹迫 何かのメーリングリストで知ったんだと思いますが、当時はまだPerlに関する技術コミュニティがあまりなかったので、純粋に技術情報を交換したいという思いから、東京出張のタイミングなどをあわせて参加していました。若い人が集まって技術をガンガン語り合うところが新しかったように思います。

── 先ほどの発表はよくマネされたとのことですが、ブログ記事やオープンソースの成果物なども含めて、やはり他のエンジニアの役に立つところがモチベーションになるものでしょうか?

竹迫 そうですね。ただ、この発表のようにすぐ役立つことはあまりないかもしれません。オープンソースの開発やブログに書いたりしたノウハウでも、感謝より先にクレームや間違いの指摘が来ることがよくあります。むしろ数年してから「助かりました」と言われたこともありました。

全文検索システムNamazu(1990年後半から2000年代にかけて日本語による全文検索のデファクトスタンダードとなったオープンソースのプロダクト)などで分かち書きを可能にする形態素解析エンジンにKAKASIというフリーソフトウェアがあったんですが、僕はそのWindows版を作っていたんです。

そのころ迷惑メールが増えていて、迷惑メール対策としてはPOPFileというメールフィルターが便利でした。そのフィルターを日本語対応していた石原淳也@jishihaさんが、Windows版KAKASHIのバイナリーモジュールを使ってくれたようで、6〜7年たってばったり会ったときに「竹迫さんが配布してたおかげで簡単に作れました」と言ってもらえたんです。

これは「アウトプットは中長期で地道に続けた方がいいな」という原体験になっています。

アウェイに飛び込んで活動するコミュニティを広げてきた

── キャリアの話に戻りますが、2005年にサイボウズ・ラボへの転職をきっかけに上京されますね。

竹迫 ちょうど上京できるタイミングでサイボウズ・ラボが人材を募集していると聞き、中長期での取り組みを自分の業務として実践できると感じたので、手を上げて転職しました。

それまでずっとプロジェクトベースで開発の仕事をしてきたのですが、納期があるので「中長期的には絶対にやっておくべきだけど、現時点では優先度が低いもの」は先送りされてしまいがちだったんです。セキュリティもそうですし、R&Dもそうですが、何年か先になれば活用できるチャンスがあるようなテーマには、余裕がないと取り組めません。

── 翌2006年にはShibuya.pmの運営を引き継ぐなど、コミュニティとの関わりも続けていますね。

竹迫 コミュニティ活動に取り組む理由の1つには、採用につなげたい気持ちもありました。Webエンジニアは、はてなダイアリーでよく日記を書いていたので「サイボウズ・ラボ入りたい!」というキーワードを巡回して声をかけたりしていました。あまちゃん(天野仁史、@amachangや、西尾(泰和、@nishioさん、川合(秀実、@hkawai3さんなど、そのおかげで仲間も増えました。

── 今でこそ採用目的のコミュニティ活動が業務に認められることもありますが、かなり先駆けた活動ですね。ただ、Shibuya.pmのリーダーを引き継ぐのはそれだけではない側面も大きいと思いますが。

竹迫 僕は、それまでやったことのないことのない仕事であれば、基本的に誘われたら断らないようにしています。Shibuya.pmも、立ち上げた宮川達彦@miyagawaさんが渡米することになり、直接「竹迫さんは毎回来ているからリーダーをお願いできますか?」と頼まれたので引き受けました。

TAKESAKO @ Yet another Cybozu Labs: Shibuya.pmリーダ交代式@バソキヤオフ

その文脈でYAPC::Asia 2006 Tokyoを立ち上げることになり、スピーカーとして台湾からオードリー・タン@audreytさんを初めて日本に招待して、高橋メソッド式の発表をしてもらうことになったり。

その高橋メソッドの高橋(征義、@takahashimさんたちがRubyKaigi@rubykaigiを始めたり、そのつながりで2008年からデブサミ(Developers Summit、@devsumiのコンテンツ委員を務めたり。

そのように、自分がやりたいからというより、人に頼まれたから引き受けた仕事はかなりあります。そうやって活動の機会を増やしてきました。

── それまでの経験や実績があって、できそうなことだから引き受けるわけではないんですね。

竹迫 僕には「アウェイに飛び込め」という座右の銘があるんです。初めて参加したデブサミもアジャイル開発やJavaといったエンタープライズ系の技術が主流で、アウェイ感がすごかったんですよ。Web系の人はほとんどいませんでした。でも、アウェイを恐れず飛び込むことではじめてお互いに文化を共有でき、理解しあえるようになってきたわけです。

初めてのことに取り組めば自分のスキルアップになり、知識や経験を広げる投資にもなる。そして相手も新しい知見が得られて喜んでくれる。やはり恐れずに飛び込むことが大切だと思います。

── そういえば、今でこそ竹迫さんはサイバーセキュリティの人というイメージがありますが、そこも飛び込んでいったわけでしょうか?

竹迫 そうですね。開発に携わったNamazuでも何度かXSS(クロスサイト・スクリプティング)の脆弱性を指摘され、それをきっかけに高木浩光@HiromitsuTakagi先生や、はせがわようすけ@hasegawayosukeさんと知り合って「ハッカーの人たちって実はいい人なんだな」ということを知りました。

それを機に「開発者はセキュリティにどう取り組めばいいんだろう?」と考えるようにもなって、当時のセキュリティ・キャンプのフィクサー園田(道夫、@sonodamさんから「開発者向けのWebセキュリティ講義を立ち上げたいので、協力してもらえませんか?」と声をかけられて飛び込んでみました。

するとさらに深い技術、例えばOSのセキュリティやマルウェア解析に取り組んでる人たちがいるんですね。新しい仕事に取り組むたびにそういう出会いがあって、視界がさらに広がってきたと感じています。

── アウェイでどのようにして居場所を作っていくんでしょうか?

竹迫 分からないことがあったら、相手の気持ちや行間を勝手に想像して埋めるのではなく、素直に聞いてみることでしょうか。そうすれば、ちゃんと教えてくれたりします。

Web以前からネットのコミュニティ(fjのニュースグループ)にずっと入り浸っていた世代なので、ときに間違いを投稿して専門家に強い言葉で指摘されたりしながら、ものごとが前に進むコミュニケーションと、逆にまったく進まないコミュニケーションの違いを体験してきました。カッとなって返信せず、ちょっと考えて丁寧に返事するやり方は、そこで学んだものです。

── 辛抱強いコミュニケーションも必要ですが、どうモチベーションを維持するのでしょうか?

竹迫 そうですね。僕が子供のころの家庭用ゲーム機といえばファミコンだったのですが、いわゆるクソゲーや無理ゲーも多かったじゃないですか。手厚いチュートリアルも解説本もなく、毎日「絶対にクリアできないんじゃないか?」というゲームをやり続けていると、半年後に思いがけずクリアできる。それが中長期で取り組むことの原体験になっているかもしれませんね。

生産性が他のエンジニアより低いならもっと得意なことを

── 竹迫さんは社内でも社外でも若く能力を持ったエンジニアを発掘し、力を発揮できる環境を作ることにも専念されていますが、そういった思いを抱いたきっかけは何だったのでしょう?

竹迫 大きなきっかけはサイボウズ・ラボへの転職です。ひげぽん(蓑輪太郎、@HigeponJaさんや奥一穂@kazuhoさんをはじめとして、たくさんのスーパーエンジニアが在籍していました。

── 先ほどもコミュニティを通じて続々と採用した話がありましたが、同じ職場に強いエンジニアがたくさんいるというのは、どういう気持ちになるものなんでしょうか?

竹迫 いやぁ、もうなんか「自分の生産性って低いな」ってすごく感じました。自分も時間をかければある程度のことはできるのですが、そういうスーパーエンジニアは次元がまったく違っていて……。

ただ「時間をかけて頑張ればできるもの」って、実は得意なことではないんですよ。任天堂の元社長の岩田聡さんも、短時間でも相手が喜んでくれる量が大きいことこそ得意なものであり、若いうちにその得意なことを何個か見つけた方が人生は幸せだとおっしゃっていました。

参考リンク▶ 岩田さん - ほぼ日刊イトイ新聞

その「得意なこと」の境界を切り分けることが、キャリアのポイントになると思います。

── 竹迫さんの場合は自分が手を動かすよりも、みんなが手を動かしやすくする環境を整える方が「得意なこと」だと気付いたわけですね。

竹迫 やはりスーパーエンジニアが活躍できる環境を作る方が、自分でコードを書くより圧倒的にクオリティが高いし、スピードも出ます。もちろん手を動かした方が速いことは自分でやりますが。

── スーパーな人たちと働いたことが、エンジニアが活躍できる環境の構築とどうつながったのかをもっと詳しく教えてもらえますか。

竹迫 そうしたスーパーエンジニアのキャリアパスは、いい環境に移ってどんどんステップアップしていきます。ですが、見ていると相対的に外資系企業へのステップアップが多かったんです。日本のITの状況としてそれでいいのかなという懸念もあって、スーパーエンジニアが活躍できる場所を国内の企業にも用意したいという思いを抱くようになりました。

ちょうどその頃に、リクルートから「ソフトウェア開発の内製化を進めて、エンジニアの環境を整備したい」という話があり、僕がやりたいことと会社のやってほしいことがちょうどマッチしたことが、2回目の転職のきっかけになっています。

── リクルートに入社されて8年目ですが、会社統合もあって組織の規模も変化し、求められるミッションも変わってきたのではないでしょうか?

竹迫 仕事自体は変わらないと思います。リクルートには「営業が強い会社」というイメージもありましたが、その中で技術を使ってプロダクトを作っている面を推進する。つまり、エンジニアの文化を経営層に説明し、エンジニアが活躍しやすい環境を整備して、技術投資を加速するという仕事です。ただ、組織の拡大によって責任範囲は広がったと思います。

── エンジニアがより能力を発揮できる組織となるために大事なことは何でしょうか?

竹迫 エンジニアがきちんと評価される仕組みだと思います。そのため、エンジニアのスペシャリストとしてのキャリアパスを、昇給の仕組みとあわせて整備してきました。グレードを定義し、年次にかかわらず若くても難易度の高い業務をしている人にはマネージャー以上の給与を支払える仕組みを整備しています。エンジニア組織で小さく始めましたが、全社的にも同様の取り組みが始まりつつあります。

── ご自身の取り組みも含めて、エンジニアを取り巻く環境は好転していると思いますか?

竹迫 少なくともいろいろな会社の取り組みが共有されるようになって、すごくマネしやすくなっているとは思います。オープンソースソフトウェアと同じように、マネされる制度はいいものであって「マネされてなんぼ」だと思っています。キャリアパスや人事制度についても情報発信が進み、後発の企業でもマネしやすい型ができてくれば、かなり挑戦しやすくなるはずです。

日本でもっともっとエンジニアが活躍できるように

── あらためて竹迫さんがやりたいことは何でしょう。

竹迫 やっぱり社会の課題を解決したいですね。日本は労働人口も減っていく中でデジタル化も遅れており、生産性を上げなければなりません。ボトルネックを明らかにして解決していく仕事に挑戦できればと思いますが、そのためにはソフトウェアエンジニアが活躍する場所をもっと増やして、いろんな仕組みを変えたり、ITで業務を効率化することが必要になります。

そのため高専で教えたりしていますし、セキュリティ・キャンプなどの活動も続けています。人事制度や組織作りといったソースコードで解決できないことでも、リクルートでの取り組みを通してベストプラクティスを共有できれば、マネしてくれる企業も増えるのではないかと思います。

── 最後に、若手のエンジニアに向けたメッセージをお願いします。

竹迫 キャリアパスという意味では、取り得る選択肢は広い方がいい。専門的な仕事ばかりだと選択肢が狭くなって、できることも少なくなりがちです。なるべく幅広くいろんなところから選べるように、アウェイな環境とまではいかなくても、クロスオーバーな環境は意識してもいいかなと思います。

ときには周りから反対されることを始めるのも重要かもしれません。周囲から期待される仕事ばかりこなしていると、短期的には褒められて仕事も気持ちよくできますが、非連続な成長を目指すなら「そんなことを今やるの?」と周りから反対されることを、信念やアイデアを信じて始めるのもありでしょう。評価は数年後に変わることもあるので。

あと、睡眠は大事ですね。ちゃんと寝ましょう。人間、寝ないとだめになるので。

竹迫さん近影

取材・構成:高橋睦美
編集:はてな編集部

Findyからのお知らせ

竹迫良範さんも出演されたFindy主催のオンラインセミナー「DevOps時代のセキュリティ事情」のアーカイブ動画を、次のページで公開しています。ぜひご覧ください。

【アーカイブ動画】DevOps時代のセキュリティ事情(YouTube)