Gincoで働く人々のストーリーを掘り下げるインタビュー、今回はGincoの最高技術責任者である森下さんへお話を伺いました。
CTOとして創業から現在に至るまで何にこだわり、どのような組織を築き上げてきたのか。技術面でのGincoがエンジニアから見たGEWの強み、Gincoエンジニアチームが考える開発方針や一緒に働きたい人物像を率直に聞いてみました。
森下 真敬(Ginco 最高技術責任者)
岐阜工業高等専門学校にて、電気・電子回路の知識を学び、その後の豊橋技術科学大学・大学院では自然言語処理,人工知能, Deep Learningについて研究。卒業後は株式会社アカツキに入社し、ゲームサーバーのインフラ開発に従事。2017年に株式会社Gincoを共同創業し最高技術責任者として、主にブロックチェーンインフラの開発を担当。
内製したブロックチェーンのコア技術を武器に、ウォレットからインフラ企業に
Gincoが創業してから4年が経ちました。この間にブロックチェーン業界はどのように変化しましたか?
Gincoの設立は2017年、1年でビットコインの価格が20万から200万に高騰した年です。この頃はまだまだ「ビットコイン」や「ICO」の投機的な側面がニュースを賑わせるだけで、テクノロジーとしては十分に評価されていなかったように思います。
マーケットの盛り上がりに呼応して業界には勢いのあるスタートアップが多数生まれました。今振り返ると自分たちもその1つと思われていたと思います。
その後、2018年に暗号資産交換業者で大規模なハッキングが多発して相場が冷え込んでからは、暗号資産ではなくブロックチェーン技術自体を評価する空気が盛り上がりました。ただ、いざ使ってみて「ちょっと使い勝手が悪いよね」という評価がエンジニアの間で定着していったことも記憶に残っています。
この間に、Gincoは創業当初の「モバイルウォレットアプリの会社」から、「ブロックチェーンインフラの会社」へと徐々にシフトし、地に足をつけて事業を成長させ続けてきました。
ブロックチェーン技術が世の中に再評価されたのは、2021年にNFTをきっかけに多くの人が興味を持ちブームになり始めて以降です。エンジニア目線では2019年末頃から急成長したDeFiも興味の対象となっていましたが、実際に触れようとする人は一握りでした。
地道に技術を磨き続けた結果、こうしたブームの中でも「Ginco=技術力のあるインフラ」として一定の存在感を示せるようになったと感じています。
創業期を振り返って今の自分達に繋がるポイントはどこにありますか?
現在のGincoにつながる重要なポイントは、私たちが暗号資産の「ウォレット」を祖業として選択した点にあると思っています。
Gincoでは創業当初から暗号資産がもっと気軽にやり取りされる世の中がくるという未来志向と、セキュリティや規制を軽視していてはハッキングやインシデントを防げないという問題意識の両方を抱えていました。この2つの考えを体現する存在がウォレットです。
また、ウォレットはブロックチェーンという技術体系において非常に重要な役割を担うセグメントでもあります。
ブロックチェーンはトランザクションを共有するネットワークにすぎません。そのため、トランザクション処理に関わる鍵管理と、ネットワークアクセスに関わるノード管理がエッセンシャルな要素です。
この2つの技術要素を最もコンパクトなプロダクトに落とし込んだのが「ウォレット」であり、ウォレットを軸足に事業を展開してきたことが現在のGincoを形作っています。
大規模なハッキング事件が多発し業界に冬の時代が訪れたときも、エンタープライズ領域でブロックチェーン活用が盛り上がったときも、コロナ後に暗号資産やNFTのブームが再来したときも、それぞれの時流に合わせて業界をサバイブしてこれたのは、最初期からウォレットが内包する重要なブロックチェーンの技術要素を外部のAPIに依存せず内製化したからこそだと考えています。
一人ひとりがオーナーシップを持ってMVPを作りきることが大切
ブロックチェーン業界の変化に合わせ、Gincoの技術組織はどのように成長してきたのでしょうか?
大きな転換点となったのは、2019年にウォレット事業をB2CからB2Bに拡張したときです。
当時相次いでいたハッキング事件の影響で規制が強化されることを見据え、創業期に培ったウォレットの技術を活用した暗号資産交換業者向けのエンタープライズSaaSを開発しはじめました。
それまでC向けのアプリを開発していたこともあり、良くも悪くも若さを感じる開発スタイルでしたが、取引先が規制に準拠する金融機関であることを踏まえて、自分たちの意識を引き上げ開発スタイルを見直しています。
具体的にはデザインドック(※1)とポストモーテム(※2)を徹底しています。技術者一人ひとりが自分の開発する内容や発生した事象についてオーナーシップを持って言語化し、チーム内でフィードバックしあうカルチャーを育ててきました。
※1:Design Docはグーグルなどで取り入れられている設計ドキュメントのスタイルで、エンジニアが取り組むソフトウェア設計の基本的な要点をドキュメント上で説明し開発に落とし込む手法のこと。
※2:インシデントとそのインパクト、その緩和や解消のために行われたアクション、根本原因、インシデントの再発を避けるためのフォローアップのアクションを記録するために書かれるドキュメントのこと。
特に、金融領域では障害に対して批判ではなく原因究明と改善に取り組み再発を防止することが極めて重要です。組織全体が常に学びを深め、その知識をチーム内に還元しあうことを大切にしています。
逆に創業当初から変わらない開発スタイルはありますか?
創業当初から一貫している開発スタイルは「プロトタイピング」「選択と集中」「ユーザー中心主義」の3つです。
まず「プロトタイピング」ですが、未成熟なブロックチェーン技術を扱う開発現場で、地に足のついた議論を行うためには、まずMVP(Minimum Viable Product)を作り、そこから議論を始めることが必要だと考えています。頭でっかちにならず、手を動かし、なるべく早くフィードバックループの一歩目を踏み出すことを最も重視しています。
次に「選択と集中」ですが、ここではYAGNI(You ain't gonna need it)原則を重視しています。変化の激しいブロックチェーン業界において、中長期で引いたプロダクトロードマップが半年後機能するかどうかは定かではありません。だからこそ、その時々で必要な機能にフォーカスし、それをきちんと作り切ることに重きを置いています。
最後に「ユーザー中心主義」です。ブロックチェーン業界では開発事情や技術的ハードルを理由にユーザー体験が蔑ろにされがちですが、Gincoでは徹底して、ユーザーが実際に利用するシーンを想像し、その体験を望ましいものにすることを重視しています。
この3つの開発スタイルは、技術や思想に振り回されず実際の利用者のことを考えて現実的な議論を積み重ねようという点が共通しているのかもしれません。
開発チームのカルチャーや雰囲気についてどのようにお考えですか?
チームにおける共通の方針、コミュニケーションを取るうえでの基本原則として「HRT(謙虚・尊敬・信頼)」を大事にしています。
ここではエンドユーザー向けのインターフェースにあたるアプリと開発者や事業者向けのインフラの両方を開発するGoogleのカルチャーが、Gincoの事業と多くの共通項を持つと考えて参考にしました。
ブロックチェーンは変化の激しい技術ですし、主観的な思想や主張が入り交じったポジショントークが繰り広げられがちな傾向にあります。
そんな中で価値を発揮し続けられる技術組織であるためには、謙虚に情報を集め、互いの意見をリスペクトし、安心して議論を交わせるチームでなくてはなりません。
その結果として、時流の変化に流されることなく事業を成長し続けられるだけの技術力を培ってこれたのではないかと思います。
「ノードとウォレットをエンタープライズ水準で提供する」という難題に挑戦
その技術力というのは具体的にどういったものでしょうか?
Gincoは国内で最多のブロックチェーンに対応したインフラと、最多の暗号資産に対応した業務用ウォレットをそれぞれ提供しています。
ここでいう対応とは単に「ブロックチェーンにアクセスできますよ」という話ではありません。
インフラにおいては、全てに対して自社でブロックチェーンノードを立て、それを安定して運用し、さらにお客様向けにフルマネージドで提供している、という意味ですし、ウォレットにおいては全てで採用されている署名方式に対応した暗号技術をモジュール化し、それをプロダクトに落とし込んでいるという意味です。
グローバルで見てもこの技術スタックを保有している企業は数えるほどしかいません。
取り組んでいる企業が少ないのは技術的なハードルが高いからでしょうか?
そのとおりです。
多くの方に誤解されていることではありますが、ブロックチェーンが障害に強いというのはネットワーク全体の話であって、1つ1つのノードは通常のデータベースよりも遥かにダウンしやすいシステムです。
例えばブロックチェーンノードの場合、ダウン後に自動で再起動するような仕組みが備わっていません。さらに自社サービスからアクセスできるノードが単一の場合は、そのノードがダウンすることでサービス全体が機能不全に陥ります。
ダウンしないように冗長性をもたせようとしても、ロードバランサーやダウン時のスイッチ機能、アラートすら備わっていません。全て自作しなくてはならないのです。
復帰後のデータの整合性も問題です。普通のデータベースはマスターとリードレプリカが役割を分担しており、書き込まれたデータが必ずマスターに記録されるため整合性が保たれる、という仕組みがあります。
しかし、ブロックチェーンではネットワーク内の全員がマスターであり全員がリードレプリカです。そのため、ダウンしたノードが整合性を回復するにも、ネットワーク全体でどの情報が一番確からしいのかを確認する作業が発生します。
中には一度落ちると過去ブロックをゼロから遡って同期しなおす仕様のノードもありますから、普通のデータベースだとダウン後の回復が10分程度でできたのが、ブロックチェーンだと数時間から1週間使えないなんてことも起きてしまうんです。
ウォレットも同様に難しいんでしょうか?
ブロックチェーン上に存在する暗号資産やNFTの多くは公開鍵暗号方式によって全て何らかのアドレス(公開鍵)に紐付いており、公開鍵に対応した秘密鍵なしに取り扱うことはできません。その秘密鍵を管理するのがウォレットです。
そのため、ウォレットにセキュリティホールがあれば流出事件につながりますし、ウォレットの利便性が低ければ暗号資産を取り扱う業務全般のオペレーションコストが増大します。さらに、秘密鍵とその署名に関する仕様もブロックチェーンごとに異なっています。
1つのブロックチェーンに対応するだけならまだしも、これが複数になるとさらに難易度は跳ね上がります。これはブロックチェーンごとにノードの仕様もネットワーク内での状況も利用されている暗号技術も全てが異なるからです。
そうしたネットワークに20近く対応し、金融機関から要求される水準の可用性を維持し続けて、品質保証しながらサービス提供している国内唯一の企業、というと、Gincoの技術力のイメージが掴めるかもしれません。
質の高いインプットと膨大な経験値が「地に足のついたブロックチェーンエンジニア」を育てていく
途方も無いことを平然とこなしていたんですね…Gincoのエンジニアになるにはブロックチェーンに精通していないといけないのでしょうか?
実は入社の時点でブロックチェーン関連の開発経験を問うていません。もちろん経験があるにこしたことはありませんが、必須条件ではありませんし、募集要項にも明記されていません。
直にブロックチェーンに触れ、膨大な経験値を得られる環境があるため、ブロックチェーンのことを知らなくても、皆すぐに知見を身に着けています。
また、エンジニアとしてのスキルや経験自体がない方であっても、意欲とポテンシャルがある方は歓迎しています。実際に未経験からエンジニアになって今では最前線で活躍している人がいます。
反対に絶対に必要な条件と考えているのは、良質なインプットができることです。
ブロックチェーンは新しい技術であり、自分で情報を集め自分で手を動かし、地道に開発し続けることが求められます。情報収集能力が高く、新しい考え方や技術スタックへ柔軟に対応できる方かどうかを見ています。
なるほどです。Gincoのエンジニアにはどういった方が多いですか?インプット以外の共通点を伺えますか?
一人ひとりが魅力的なキャラクターを持っていますが、共通しているのは技術に振り回されない地に足のついた感覚を持っていることです。
ブロックチェーンのような技術を扱う際に避けなくてはならないのが「ハンマーを持つと全てが杭に見える」という状態です。つまり、ブロックチェーンを使いたくてその用途を探す状態、目的と手段が逆転してしまうんです。
先端領域の技術を得意としていても、それはあくまでサービス利用者の課題を解決する手段にすぎません。当たり前のことですが、ブロックチェーンが適していない場合には、ブロックチェーンを使わない方がいいんです。
これを共通感覚として持てているのは、ブロックチェーンの扱いにくさを身にしみて理解しているからかもしれません。こんなに扱うのが大変なものなのだから、必要な用途で上手に使いこなそうよ、という。
実際、ブロックチェーンの世界でも跳ねるサービスは、技術よりもマーケティングやUI・UXの素晴らしさによるものがほとんどです。爆発的なブームを起こしたAxieやSTEPNもブロックチェーン技術を上手にサービス体験と結びつけたことが成功の要因ですよね。
Gincoのエンジニアは、技術に対する深い見識と技術をサービスに落とし込むビジネス感覚の両方が大事であることを理解し、それを身に着けているように思います。
Web3時代に技術で勝負したいエンジニアにはGincoがおすすめ
エンジニアの皆さんはどのようなチームで働いているのでしょうか?
技術開発部門は開発チーム、品質管理チーム、SREチームの3つで構成されています。
開発チームは「業務用ウォレット」や「NFTサービス」といった個別具体的なプロダクトを中心に開発するチームで、品質管理チームはQAを主に担うチームです。
SREチームは文字通り、SRE(Site Reliability Engineering)を通じてサービスの保守運用と信頼性向上に取り組むチームです。SREとは元々Googleが提唱したシステム管理とサービス運用に対するアプローチで、コードによって手作業や繰り返し行われる作業を減らしたり、システムを自動化して作業量の増大に対応しています。
このようなチーム構成にすることで、ビジネスの変化に適応可能なスピードを重視する開発部門と安全性・安定性を重視する運用部門とが、常に連携してよりよい顧客体験を追求することができます。
今後どのようにチームを成長させていきたいとお考えですか?
名実ともにNo.1のブロックチェーンエンジニア組織にしたいと思います。
正直、今の時点で国内で一二を争う技術力を持っているという自負はありますし、金融機関が利用できるレベルのインフラを提供している競合企業は国内に存在していません。
ただ、こうした取り組みをきちんと外部に発信し、ノウハウを業界全体にも共有していくことが出来ていないのは未熟な点と反省しています。
SNSなどを見渡すとブロックチェーン技術の専門家、暗号学の専門家は沢山いらっしゃいますが、それらを使ってどういったプロダクトが実現可能なのか、具体的にどうプロダクトに落とし込むのか、といった議論はまだまだ不十分です。
せっかくブロックチェーンに注目が集まっていることですし、国内でもどんどんユースケースが広がっていけばと思いますので、OSSへの貢献を含む知見の共有に力を入れていきたいと思います。
また、No.1のブロックチェーンエンジニア組織を名乗るうえで、切り離せないのが給与の議論です。極論、Gincoのエンジニアは優秀で高給取りだ、と言われるようにしていくことがCTOとしての自分の役割だとも思います。エンジニアが力を発揮する上で給料は大切だと思うので。
ただそれは、単に高単価でオファーを出しましょうという話ではありません。
お客様に価値あるサービスを提供し続けよう、そのために時流やマーケットに左右されることなく本質的に価値のある技術とエンジニアに投資し続けようということですね。
最後に、今現在エンジニアがブロックチェーン技術を身につける意義や、Gincoで働く魅力について教えてください。
ブロックチェーン技術の認知度は高まり、専門家やエンジニアが世界中の企業や政府機関で求められています。今後もさらに需要が高まっていくと予想される技術ですから学ぶならまさしく今だと思っています。
エンジニアにとってのGincoの魅力は触れられるブロックチェーンの豊富さです。対応ブロックチェーン数は取引所を凌ぎ国内トップですし、今後もどんどん対応ブロックチェーンを拡充していく予定です。特に、新しいブロックチェーンに興味のある方や複数のブロックチェーンを使いこなせるようになりたいという方にはおすすめできる環境です。
インフラという事業ドメインの性質上、特定のユースケースにとらわれず金融、エンタメ、行政など様々な分野でのブロックチェーン活用に数多く関われるため、自分の興味関心に沿って仕事を選ぶこともできます。
創業以来蓄えてきたブロックチェーンのコアな技術と知見を身に着けられることを考えても、ブロックチェーンエンジニアとしてのキャリアを踏み出す場として利用してもらえばいいんじゃないかな(笑)
今後も成長が見込まれるブロックチェーン産業に興味をお持ちの方、先端技術を社会実装させていくことに面白さを感じる方は、是非Gincoで一緒に働きましょう!
株式会社Gincoについて
Gincoは「経済のめぐりを変えていく」というビジョンのもとで、価値ある情報の流通を円滑化するブロックチェーン技術の社会実装に取り組んでおります。
提供するクラウド型ブロックチェーンインフラのシェア及び活用領域の拡大に伴い、エンジニアを始めとするあらゆる職種で採用活動を強化しています。
ブロックチェーンノードやウォレットといった、ブロックチェーンサービスに不可欠な領域に直接触れ、ブロックチェーンエンジニアとしてのキャリアを形成できるGincoでの働き方にご興味をお持ちの方は以下より、下記の会社概要資料とHPをぜひご覧ください!