丸の内で働くブロックチェーンエンジニアのブログ

丸の内でブロックチェーンエンジニアとして働いています。勉強している技術情報やニュースを紹介します。

ブロックチェーンエンジニアは実際どのくらい必要とされているかを求人要件から考えてみる

2018/4 追記:最新版の記事を書きました。

www.blockchainengineer.tokyo

業界が全く成熟していない状態で、こんな記事を書くのはおこがましいのですが。。。
ブロックチェーンエンジニアは実際どのくらい必要とされているか、また求められる素養について、まだまだ情報がなく指針もない状態です。

ブロックチェーンエンジニアというのは、一部の仮想通貨界隈を除いてかなりマイナー職種な気もしますが、仮想通貨、ICOバブルと共に徐々に知名度が広がって行くと思います。もしメジャーになれば、スキルセットについても、一昔前のデータサイエンティストブームのように、データサイエンティストのスキルセットなるものが整備されて行くのかもしれません。今、日本に2つほどあるブロックチェーンの協会が旗振りするのかどうかは定かではありませんが。

そんな情報がない中なので、ブロックチェーンエンジニアの募集要項について調べてみて、ブロックチェーンエンジニアは現状どのくらい必要とされているか、またどういうスキルが求められているかを考えてみようというのが本記事の趣旨です。

現状はまだフルスタックエンジニア

一通り大手の求人票を見てみたところ、現状はまだフルスタックエンジニアとしての募集が多いのでは、という印象を受けています。以下に、転職サイトから調査したブロックチェーンエンジニアの募集要件です。 ※CoinCheck社だけはブロックチェーンエンジニア募集が見つからず、「エンジニア」としての募集を取ってきています。

募集企業 業務内容 必須要件 歓迎要件
GMOコイン
仮想通貨の取引システム、その他システム全般の設計・開発・運用業務
Javaでのサーバーサイド開発・運用
仮想通貨、ブロックチェーン技術、セキュリティの調査・研究

Javaでの開発実務経験3年以上
マルチスレッド・プログラミングの経験
英語でのコミュニケーション

並行/非同期処理プログラミングに関する高度な知識
パフォーマンス・チューニングの経験
金融システムの開発経験
ブロックチェーン技術の知識、経験
AWSGCP、Azureなどのクラウドサービスの構築、運用経験
開発、運用周りをより良くするためのDevOps系の知識、経験
bitflyer ビットコイン販売所・取引所運営
ブロックチェーンを活用した新サービスの研究・開発について

・高いプログラミング能力 (特に C#)
・計算機科学 (特にアルゴリズム、データ構造) の専門的知識
・並列 / 非同期処理に関する知識
・Bitcoin 関連プロトコルに関する知識 / 理解

関数型言語の知識
コンパイラインタプリタの開発経験
プロトコルの設計 / 開発経験
・セキュリティ / 暗号処理の知識
・論文執筆等の経験
CoinCheck 仮想通貨取引所の運営、機能開発
■Webアプリ開発に携わった経験
■Gitといったバージョン管理システムの使用経験

金融システム開発経験
システムに対する大規模攻撃を考慮した開発経験
Quoine 仮想通貨取引所の運営、機能開発
ビットコインプロトコルに関する知識・理解
■英語でのコミュニケーション能力

■金融業界での就業経験
イーサリアム等、ビットコインブロックチェーン以外の仮想通貨の知識

コンセンサス・ベイス
・BitcoinやEthereumなどブロックチェーン技術に関わるプログラミング、設計、ドキュメント作成と関連する業務。

・プログラミングの実務経験3年以上
・基本的なブロックチェーン技術に関する知識
Unix系OS(Linux等)、サーバ構築の実務経験
・英語の技術ドキュメントを読む能力

ブロックチェーン関連の開発経験
コントラクト、チェーンコード作成経験
・Node.js、 Go言語での開発経験
・マネージメント経験
フリーランス、起業、スタートアップの経験
・英会話(ヒアリング、スピーキング)
ソフトバンク
Fintech系事業に必要となる要素技術の調査・企画・開発
Fintech系事業を支えるサービスプラットフォームの調査・企画・開発を遂行する。

プログラミング経験、オープンソースの利用経験。金融系企業での経験は必須ではない。

暗号化技術についての基礎知識、ある程度の技術に関する英会話力(もしくは英会話の度胸)

BitcoinやEthereumの知識についても書かれていますが、要件としては金融系システム経験やその企業で使われているプログラミング言語、教養的な技術力の掲載も多い印象です。要は純粋に「ブロックチェーン技術だけのエンジニア」を求めているところは多くないのではないかと。この背景には、ブロックチェーンエンジニア自体が市場に多くないこともあると思いますがそもそも現状ブロックチェーンだけを使う領域が多くないのだと思います。

純粋にブロックチェーンだけが必要な領域は限定的

現状、ブロックチェーンエンジニアを募集しているのは

  1. 仮想通貨取引所
  2. ICOを行ってサービスを開発するスタートアップ
  3. ブロックチェーン関連の新規事業部署、コンサル

といったところだと思います。

1.仮想通貨取引所において、ブロックチェーン知識が必要な領域は、

といったところになると思います。これらは重要なシステムですが、頻繁に変更される領域ではないため専任の人間が少数いれば足りるのではないかと考えています。どの程度、新たな仮想通貨を頻繁に扱うかにもよりますが、、、

取引データ自体は取引システムだけで完結させておいて、後からブロックチェーンとバッチ的に同期を行うといったことも可能かと思うので、ブロックチェーンとの連携部分だけ疎結合な設計が考えられます。その方がむしろ人を取りやすくて簡単かもしれません。

また、「ブロックチェーンエンジニア」としての募集をしていない仮想通貨取引所もあります。開発スキルの高いエンジニアを採用して、ブロックチェーンの知識をつけてもらった方が早いのかもしれません。

ただし、bitflyermiyabiのように専門サービスを運営している場合は3のような新規事業開発の役割に近いかと。

2.ICOを行ってサービスを開発するチームでは、ブロックチェーン知識が必要な領域は主に

といったところかと思います。ICO実施時には非常に大事なのですが、終わってしまうとそれほどスマートコントラクトを書く機会はなくなると思います。また、ICOのコードはzeppelinが公開しているようなOSSを利用して、なるべく既存のスマートコントラクトを利用するような流れもあります。

サービスのデータとブロックチェーンとの同期も重要なのですが、ICOを実施した後のスタートアップチームにおいて、それだけを実施するということは考えづらく、ICO完了後はむしろアプリ開発などの役割が期待されるのではないかと思われます。サービスにもよりますが、現状では、「ブロックチェーンしかできない」エンジニアだとチームとしても扱いづらいのではないかと思います。

3.ブロックチェーン関連の新規事業部署、コンサルでは、

といったところかと思います。案外、こちらはブロックチェーンエンジニアが役職を得やすいのではないかと考えています。実証実験にしても、技術指導にしても、ブロックチェーン技術を存分に利用できるので、純粋な「ブロックチェーンエンジニア」としての役割は求められると思います。

新規事業、サービスについては、ブロックチェーンデータの分析サービスなど、「直球」のサービスを運営する場合は純粋なブロックチェーンエンジニアが求められると思います。Blockchain Intelligence Groupのサービスや、bitflyermiyabiの開発のような部署であれば、ブロックチェーン関連の高度な専門知識が求められると思います。

しかし、まだ新規事業の部署が小さい場合(多くはそうだと思います)、エンジニアが一人で何役もこなさなければいけない事もあり、一人でノードを立てた後、ブロックチェーンデータの抽出や分析のために、sparkやkafkaなど分散処理技術を使う必要があったり、実証実験でアプリのフロント部分も作成しなければいけなかったりという場合もあります。私もこの手の企業におり、一人で何役もこなす事が多くあります。。

すでにエンジニアとしての経験を積んでいて、ブロックチェーン知識を持った人材がしばらくは必要とされそう

ブロックチェーンエンジニアの募集要項や、現状で必要とされる領域から考えた結果、まだブロックチェーン技術だけの仕事というのはごく一部を除いてまだ多くはなさそうな気がします。ブロックチェーン技術だけの仕事に関わる場合でも、エンジニアや研究者としての基礎教養がある事を前提としている節も見受けられます。

パイとして多くなるのは、普段はアプリケーションエンジニアとしての役割が求められるが、少しブロックチェーン技術が求められる場合があるというようなパターン。エンジニアとしての役割+ブロックチェーン少々という場合がまだ多いのではないかと思います。

また、ブロックチェーンはあくまで分散型台帳技術です。リレーショナルデータベースだけしか扱えないエンジニアは活躍の幅が狭まるのと同様、分散型台帳技術だけではなく、アプリでもミドルウェア関連でも他の相性の良い技術を学ぶ事が生存戦略として重要なのではないか、とブロックチェーンに関わる素人ながらに思ったりもします。

以上、全く成熟していない段階の業界ですが、現場で開発をする人間として思った事、また周りのブロックチェーン界隈の方からの見聞きした事をまとめてみました。変化が早い業界なので、半年後にはまた変わっているかもしれません。。