Speee DEVELOPER BLOG

Speee開発陣による技術情報発信ブログです。 メディア開発・運用、スマートフォンアプリ開発、Webマーケティング、アドテクなどで培った技術ノウハウを発信していきます!

入社半年のWebエンジニアが理解した、ブロックチェーンの面白さと技術の研鑽

※この記事は、2024 Speee Advent Calendar 7日目の記事です。 昨日の記事はこちら

tech.speee.jp

Datachainのエンジニアリングマネージャーの新田です。

この記事ではWebエンジニアの経験をしてきた私が入社して半年経って、「ブロックチェーン何も分からん」から「なるほどブロックチェーン面白い」と感じている今を通して、 エンジニアとしてブロックチェーンは何が面白いのか? ブロックチェーンという別の技術に触れることで改めて理解した技術への印象 技術を捉え直したことで変化した技術成長の考え をお伝えできればと思います。

自己紹介

Datachainに入社したのは2024年6月です。入社して半年が経ちました。Datachainは「技術」によって課題を解決する会社です。

今後、様々なアセットが様々なブロックチェーン上でデジタル化されます。それらのアセットはプログラマブルな性質を有しますが、ブロックチェーン同士をつなぐインターオペラビリティが実現されなければ、それぞれのブロックチェーンは分断され、その恩恵は限定的になってしまいます。

Datachainは情報が分断される課題を「技術」で解決する会社です。

様々なネットワークをつなぐインフラを創ることで、世界中の人々が、世界をあたかもひとつのネットワークとして扱えるように、そして、より便利に様々なサービスを利用できるようにしていきます。

私自身はブロックチェーンの開発が未経験の中で、このようにブロックチェーンの開発を本格的に行う会社に入社しました。逆を言えば、ブロックチェーンを本格的に理解しようとしてから半年なので、まだまだ初心者です。初心者だからこそ見える、ブロックチェーンに詳しくない人に向けたブロックチェーンの景色をお伝えできるのではと考えています。

まずは私がどのようなWebエンジニアで、ブロックチェーンについてどのくらいの知識だったのかをお伝えします。

Datachainに入るまでブロックチェーンについてあまり知らない
  • 暗号資産は国内の取引所を使って購入経験はある
  • 2017年くらいのブームで興味を持ったが、ブームが過ぎると共に縁がなくなる
  • 下り坂のブームに乗り、損をした経験がある
Webの知識はそれなりに知っている
  • SESを中心に行う小さなSIer企業に勤務、SESで色々な現場を経験
  • サイバーエージェントへ転職し、アドテクでの広告配信に関わるシステムを作る
  • メルペイにエンジニアリングマネージャとして転職し、スマホ決済開発に関わる
  • スタートアップのカケハシでエンジニアリングマネージャとして薬局向けSaaS開発
  • 現職はDatachainでEMをしている

「Webの知識はそれなりに知っている 」ってどれくらい?
  • 色々な現場
    • SESや請負など様々な現場で20を超えるプロジェクトの開発経験
    • プロジェクト型の開発、プロダクト型の開発など、大小さまざまな開発の進め方
  • アドテクでの広告配信
    • 10万QPS (1秒あたりのクエリ数) & 50ミリ秒でリクエストを捌く実装の必要あり
    • たくさんのリクエストで1日数十億を超えるデータができるため、処理する基盤が必要
  • スマホ決済開発
    • 直接お金を扱うため1円もズレてはいけないミッションクリティカルな処理
    • 20を超えるマイクロサービスで複雑に連携する大規模なシステム
  • 薬局向けSaaS開発
    • 複雑な医療データを使いながら「 医療データ x 在庫管理 x AI」の複雑の掛け算のシステム
    • レガシーでファジーなデータを精緻に利用する医療システムに活用する方法

プロダクトのシステム開発ではリリース前の立ち上げ期のタイミングから関わっているため、アーキテクチャ概要や技術の方針の概要は理解しています。それぞれに違った技術的な難しさがあり、非常にやりごたえがあったと感じています。

同じ技術の使い方ではなく、違った技術の難しさを様々に経験してきていると思います。

Webでの経験はありますが、今回はブロックチェーンという全く違う領域にチャレンジすることになりました。

ブロックチェーンという未知への挑戦

私のこれまでの経験から事業と技術は密接に紐づいていると実感しています。誰かの課題を解決するための技術的な力のインパクトの大きさが技術力だと考えています。技術を詳しく知るということはインパクトまで知ることです。

今回の入社を決めたタイミングでブロックチェーンのインパクトは何か?を知りました。これまでブロックチェーンでは個々のブロックチェーンに閉じたアプリケーションや暗号資産の交換などがされていることは理解していましたが、私はそれだけでは社会に影響が与えられるのか、まだ実感がありませんでした。

しかし、Datachainで行う2つの事業である「ブロックチェーンとブロックチェーンを繋ぐ技術の開発」「ブロックチェーンを使った国際送金」の事業は私でも実社会への影響をイメージすることができました。

1つ目の「ブロックチェーンを繋ぐ技術」は、今後あらゆるアセットがデジタル化される中で、企業内のデータとして管理されるのではなく、共通のデータを管理する場所でやり取りが行われることが当たり前になっていくと感じました。

2つ目の「国内企業と海外企業での送金」は大きな貿易で使われるなど非常に大きな額がやりとりされ、普段スーパーで売っている商品の外国の商品を手軽に買えることを支えていると理解できました。これは、Datachainの持つ技術が特別だからこそ起こせる大きなインパクトの技術力であり、事業のインパクトもグローバル水準であり、世界がターゲットになっているためそのインパクトが大きいと感じました。

入社するときにブロックチェーンについて調べてみたのですが、技術的にはサッと読めば分かるレベルではありませんでした。知れば知るほどもっと知らなければならない興味深いことが無限に出てくる面白さがあり、これは自分が本気でチャレンジしなければこの深い技術の理解は難しいと考え、ブロックチェーンという自分にとっての未知の技術の深さを知るために入社を決めました。

ブロックチェーンは何が面白いのか?

ここでは私の3つの気づきをお伝えします。

  • まだ確立していない領域のため、技術が何を生むかを工夫する面白さがある
  • グローバル前提のため事業インパクトの大きさが凄い
  • Web技術と共通する技術が多く、技術の基礎力が問われるため、Webエンジニアとしての力も鍛えることができる

まだ確立していない領域のため、技術が何を生むかを工夫する面白さがある

ブロックチェーンはビットコインが大きな盛り上がりを受けた頃、大きな期待を受けていましたが、程なくしてガートナーハイプ・サイクルで言う幻滅期を迎えました。直近では啓発期に向かっていると言われており、まさにDatachainの技術力を使って実用的なブロックチェーンの活用を実現することでこの期待に応えるような、技術的な挑戦と事業的な挑戦を同時に行っています。

ガートナージャパンが発表した「日本における未来指向型インフラ・テクノロジのハイプ・サイクル:2024年」の図

Datachainは創業7年になりますが、これまで研究開発を中心に行ってきました。Webで利用しやすいように磨かれた技術と違い、まだ研究開発レベルの技術の開発を行っています。 Webで言うTCPのようなプロトコルを開発しており、IBCの仕様を利用し、安全で低コストな実用的な実装を行い、新しい通信のプロトコルをDatachainでは開発しました。 TCPでPCとPCを繋ぐように、ブロックチェーンとブロックチェーンを簡単に繋ぐことができれば、まさにインターネットのようにブロックチェーン同士で必要な情報がやり取りできるようになるかもしれません。

グローバル前提のため事業インパクトの大きさが凄い

これまで研究開発を行ってきましたが、今まさにその技術が形になり、事業化に向けた次の一歩に大きく踏み出そうとしています。

ブロックチェーンで解決する領域は広く、グローバルでも活用ができます。今、Datachainで取り組む事業領域は2つです。ブロックチェーンとブロックチェーンを繋ぐ技術を実用的な利用方法として活用した「クロスチェーンブリッジ領域」と高い技術力と貢献を評価され国際的な金融機関と取り組む「国際送金ソリューション」です。それぞれにプロダクト開発を行い、成長を見込んでいます。

1つ目のクロスチェーンブリッジ市場は様々な技術でのブロックチェーンの暗号資産の流通が行われています。現時点で1300億ドル (約18兆6000億円)の資金が集まっており、まだまだこの市場は拡大中であり、いくつかのユニコーン企業(時価総額1000億円以上の企業)も生まれています。直近ではアメリカでの暗号資産推進の勢いも増しています。

https://defillama.com/ 2024/12時点

2つ目の国際送金ソリューションの現在の市場は190兆ドル(約2京8500兆円)です。ブロックチェーンでの新たな国際送金の手段を増やすことになります。そのため、ブロックチェーンでの技術を使っても全ての取引が切り替わるのではなく、順次利用を拡大を目指します。実社会でのブロックチェーン技術の活用を目指しており、ブロックチェーンで実社会のつながりを実現することで更にシームレスなお金の流れを実現すると共に、ブロックチェーンと実社会のつながりを実現します。多くの国内メガバンクや国際金融機関と共に取り組めるのはDatachainが世界レベルでの技術的な実績や信頼を積み上げてきたことで、この取り組みに繋がっています。

詳しい説明はこちらをご覧ください。 https://www.youtube.com/watch?v=0DIt0Q_lcEQ

Web技術と共通する技術が多く、技術の基礎力が問われるため、Webエンジニアとしての力も鍛えることができる

エンジニアとしてブロックチェーンは何が面白いのか?

ブロックチェーンは新しいコンセプトの実装であり人間心理なども利用しながら実行ルールが作られています。コンセンサスアルゴリズムはブロックチェーンの特徴の1つです。 現在のブロックチェーンは様々な工夫が入っていて複雑なものもありますが、プリミティブなブロックチェーンを実現する場合、特別に難しい技術を扱うのではなく、実行ルールの工夫によって分散処理を成り立たせています。

書籍によってはブロックチェーンの説明を始めるときにゲーム理論から始まる本があるほどです。ブロックチェーンは技術と人間心理が融合して実現しているシステムであると感じます。

ブロックチェーンという別の技術に触れることで改めて理解した技術への印象

4一言でブロックチェーンエンジニアが開発すると言っても、4つのブロックチェーンに関わるエンジニアリングがあると知りました。

1.Webからブロックチェーンの処理を呼び出す トークンの受け渡しはほとんどブロックチェーン上のアプリケーションを実装することなく出来る可能性もあります。送金を呼び出す処理だけであればかなりコモディティ化しており、おそらく取引所などのアプリケーションでは実際はWebアプリ領域の開発がほとんどの場合もありそうです。とはいえ、ブロックチェーンの挙動に合わせた実装には工夫が必要になります。

2.スマートコントラクトの開発 ブロックチェーン上で動くアプリケーションを実装します。NFTやゲームなどが実装されることが多くあります。大きなものだと取引所をつくることもできます。通常ブロックチェーンエンジニアと呼ばれる人はこの領域を指すことが多いようです。

3.ブロックチェーンの自体の開発 ブロックチェーン自体の開発を行います。パブリックチェーンを新しくつくるケースよりも、プライベートチェーンをつくるケースが圧倒的に多いです。企業が実現したい要件によってOSSのブロックチェーンを基盤にしながらカスタマイズして作られるケースも多くあるようです。

4.ブロックチェーンの周辺技術の開発 クロスチェーンブリッジもそうですが、ブロックチェーンを支えるために必要な技術や実装があります。ブロックチェーン本体ではないですが、実際はブロックチェーンの足りない機能を拡張して解決するものがあります。

Datachainでは1〜4の全てを扱うケースがあります。通常はいずれかの領域に注力してプロダクトを作っていることが普通ですが、Datachainではプロトコルレベルからプロダクトレベルまで関わっているため、全てのケースが必要になります。プロトコルをつくるレベルで「4.ブロックチェーンの周辺技術」の領域での研究開発に始まり、分散取引所を実現するリクイディティプールを処理する機構などは「2.スマートコントラクトで実装」しています。これらを呼び出すためにWeb領域でUIを実装し「1.スマートコントラクト」を呼び出しています。更には国際送金の事業ではビジネス要件に合った「3.ブロックチェーンの開発」が検討されています。

Web領域でもアプリケーション、ミドルウェア、データベースなどがあります。基本的にこれらは組み合わせるだけであって、アプリケーション部分をつくることが大半です。しかし、ブロックチェーン領域ではまだまだ基盤レベルからつくる段階であり、ブロックチェーンを繋ぐ技術も仕様も実装も新しいものが作られており、Datachainもこの技術を開発することに始まり、その技術を使ったアプリケーションまで作っています。

技術を捉え直したことで変化した技術成長の考え

ブロックチェーンの実装をするには堅牢で省コストな実装が必要です。なぜならブロックチェーン上で複雑な処理を行うと大きな金額の実行手数料が掛かります。セキュリティは高く、処理は省コストで動く、そのような実装をするにはシンプルで迷いのない実装が必要です。

実現したい処理を最もシンプルに実装で表現することが強みになることは、エンジニアの実装の筋トレに繋がるのではないでしょうか。

他にも様々な技術的な基礎力を試される場面が多くあります。

ブロックチェーンの技術にチャレンジすべき?

事業としてみたときに大いにチャレンジする価値のあるスケールの事業だと考えていますが、エンジニア個人として考えたときにもブロックチェーンの技術にチャレンジすべきでしょうか?

私はブロックチェーンの技術を経験することはWebエンジニアとして成長の遠回りになる道では無いと感じます。むしろ、本質的な技術とは何か?を考える機会になるため、新しい観点の気付きから大きく成長するチャンスも得られる可能性があります。実践の中でシンプルに、安全に実装することがプラットフォームに自然と促されているため、要請ギブスのように鍛えられます。

鍛えられた基礎力はWebエンジニアに戻ったとしても活かされることが多大にあると考えています。

ブロックチェーンの開発で鍛えられる技術の基礎力

通常のWeb開発でエンジニアが開発を行うとき、プログラミング言語の表現力、フレームワークの使い方、動かすための実装はまずは必要です。さらに技術の基礎力を高めるためには、これらをもっと詳細に具体的に捉えたり、抽象的に概念的に捉えたりすることで、広く応用できる力を引き上げる事ができます。

例えば、具体的な詳細を知るには、目の前で使っているフレームワークや標準ライブラリなどのソースコードを読んでみると楽しかったりします。他には、メモリやネットワークの処理の詳細を理解します。メモリではスタック領域やヒープ領域の違い、ネットワークではTCP/IPやHTTPなどのプロトコルの仕様の理解などをすることによって、何故エラーが起きるのか?どのような処理が効率が良いのか?を理解することが進みます。

抽象的な概念化では、実装の表現をプログラミング言語に依存せず、デザインのパターンやアーキテクチャパターンに置き換えたときにどのようなパターンのときに使われるものなのか、あるいはフレームワークやライブラリが解決しようとしている「意図」を理解することが大事になります。 また、メリットがあれば必ず存在するデメリットについて常に考えることなどがあります。トレードオフを理解した上での選択は高いレベルの技術的な意思決定に繋がります。

Web技術はクラウド化や抽象化が進み非常に便利になってきていますが、ブロックチェーンの技術は現状ではまだまだプリミティブな技術であるため、この具体と抽象の振り幅を大きく理解して技術を取り扱う必要がありそうです。

まとめ - Datachainの事業と技術への向き合い方

どんな事業であっても成功が約束されたものはあるわけではありません。しかし、技術自体が未知であり、本当にできるかわからないものを作る機会はあまりないと思います。Datachainでは取り扱う技術も未知の領域のものを含んでおり、本当に実現できるかどうか分からないようなチャレンジをしています。これらのチャレンジの芯にはブロックチェーンを使った事業の実現のために、腰を据えた研究開発が必要ですが、その開発を行う環境を作った強い意志がここにはあります。

このR&Dから生まれた技術を元に作っているプロダクト、信頼を受けて始めたプロダクト、この事業のチャレンジサイズはグローバルスケールの非常に大きなチャレンジをしています。

技術をコアにしながら実現を目指す、技術的と事業的の両面での大きな挑戦に全力を掛けることができる環境があると感じて、入社半年ながらも面白く感じています!

お知らせ - オンラインイベントの開催

来週の12月10日にオンラインイベントを開催します。 こちらのオンラインイベントでもブロックチェーンの話をする予定です。 イベントでは今回の記事よりももっと主観的に解釈したブロックチェーンの話をします。 オンラインイベントですので気軽に登録していただければと思います。

https://datachain.connpass.com/event/337038/

 

最後に - 一緒に働く仲間を探しています!

Speeeでは一緒にサービス開発を推進してくれる仲間を大募集しています!
新卒の方はこちらより本選考に申し込みが可能です! キャリア採用の方はこちらのFormよりカジュアル面談も気軽にお申し込みいただけます!

Speeeでは様々なポジションで募集中なので「どんなポジションがあるの?」と気になってくれてた方は、こちらチェックしてみてください!もちろんオープンポジション的に上記に限らず積極採用中です!!!

Datachainの募集

まずはお話を聞いてみたいという方は、ぜひ以下のカジュアル面談フォームよりご連絡いただけると幸いです。私 新田か、もう1名のEM 加藤のいずれかがご対応させていただきます!

https://herp.careers/v1/datachain/yobfg8YOkk4g

求人一覧は、こちらからご確認いただけます。

https://herp.careers/v1/datachain

最後までお読みいただきましてありがとうございました!