ブロックチェーンエンジニアの種類と仕事内容を解説

ブロックチェーンエンジニアの種類




こんにちは、高妻です。ブロックチェーンエンジニアとして働き始めて1年以上経ちました。

 

今の所全くメジャージャないので、ブロックチェーンエンジニアってどういうことをするのか全くわからないという言葉をよく頂きます。今回ブロックチェーンエンジニアの種類と仕事内容について詳細に解説したいと思います。

 

本記事の内容
  • ブロックチェーンエンジニアの種類と必要なスキル

 

先日下記Yoube動画に出演し、ブロックチェーンエンジニアがどういったことしているのか解説したのですが、具体的でわかりやすかったですと反響をもらったのでこちらもぜひどうぞ。

 

 

ちなみにコメントはこんな感じでやはり難しいとの感想が、、、今後簡単に理解できるように記事なり動画なり出していこうと思います。

 

ブロックチェーンエンジニア難しい

 

ブロックチェーンエンジニアについて知りたかったので、参考にします。いつも学びの深い動画をありがとうございます‼︎
Solidityをほぼ使ってないのは以外でしたwコラボ面白かったです!
専門用語めちゃくちゃ出てきてムズ!笑
ブロックチェーンに興味はあっても、あまりどういうものか知るすべが無かったのでとてもためになります。ありがとうございます!
なるほどなるほど 二人で会話してるwおいてけぼり
ブロックチェーンも面白そう。

 

ブロックチェーンエンジニアの種類と必要なスキル

まずはブロックチェーンエンジニアの種類について解説します。

 

ざっくり分けると下記3つに分けれますが、この3つの領域は重なりながら密接に関係しています。

 

ブロックチェーンエンジニアの種類
  • ブロックチェーンそのものを開発するエンジニア
  • ブロックチェーンを使ってサービス、アプリケーションを開発するエンジニア
  • 最先端技術を研究するエンジニア

 

ブロックチェーンそのものを開発するエンジニア

この領域のブロックチェーンエンジニアはBitcoinEthereum自体のソフトウェアを開発しています。

 

開発をリードする組織はあるものの、GitHubを使ってOSSで開発が行われているので開発の進捗をチェックしたり、参加することができます。

 

代表的なBitcoinとEthereumについて解説します。

 

Bitocin

Bitcoin系の通貨(Litecoin、BCH、BSV)などはC++で開発が行われています。なぜC++が多いかというと、BitcoinがC++で開発しており、そこからハードフォークして派生した通貨が多いからですね。ハードフォークについては下記リンクを参照してください。

>>仮想通貨のハードフォークとソフトフォークとは?

 

私自身はブロックチェーンエンジニアとして働いていますが、Bitcoinなどの通貨自体を開発している訳ではないです。Bitcoinなどの通貨自体の開発が1番難易度が高いです。

 

その理由として、Bitcoinのプロトコルを理解すること自体が非常に難しく、さらにC++でそれを実現しないといけないので2重でハードルが存在します。だから、Bitcoinなど通貨自体のソフトウェア開発に参加している人は本当にすごいエンジニアが多いです。

 

実際の開発内容は送金プロトコルの改善や、スケーリングを解決するためのプロトコル追加、パフォーマンス改善などですね。

 

Ethereum

EthereumはGoで実装されているgo-ethereum(geth)とRustで実装されているParityの2つがあります。どちらも同じプロトコルに準拠して実装されているため相互に接続して稼働することができます。

 

どちらもだいたい2週間おきくらいに新しいバージョンのソフトウェアをリリースしているので開発スピードは非常に早いですね。

 

gethはGoで実装されているのでプロトコルだけ理解できれば比較的開発に参加しやすいソフトウェアではあると思います。それでも日本人でgethの開発に継続してい貢献している人はいないので難易度は高いですね。

 

go-ethereumとparityの違いは下記リンクにまとめているのでぜひ読んでみてください。

>>EthereumブロックチェーンノードのgethとParityの違いと特徴!おすすめはParity!

 

ブロックチェーンを使ってサービス、アプリケーションを開発するエンジニア

BitcoinやEthereum自体のソフトウェアを開発する訳ではなく、作られたソフトウェアを使ってサービスやアプリケーションを作るエンジニアのことを言います。

 

仮想通貨取引所システム

この分野では取引所にエンジニアが一番集まっています。板取引のシステムは普通のWebアプリケーションですが、仮想通貨の入出金のシステムを作るのにブロックチェーンの知識が必要となります。

 

高額な金額を扱うのでセキュリティ、ブロックチェーン、暗号学について高度な知識が必要となります。

 

ウォレット事業者

私が所属しているGincoはブロックチェーンを使ってサービスを作っているのでこの領域のエンジニアが多いです。例えばGincoでは、スマホアプリで仮想通貨を管理できるサービス、ブロックチェーンノードのフルマネージドサービス、事業者向けのマルチシグウォレットシステムの提供などがあります。

 

アプリケーション開発のほかにもブロックチェーンの知見や知識をいかして、ブロックチェーンがどういったことに使えるのかコンサルなどをやっている企業も多いです。

 

ブロックチェーンを使ったゲームやSNS

ブロックチェーンを使ったゲームにCryptoKittiesMyCryptoHeroesCrypto Spellsなどがあります。CryptoKittiesは世界で一番最初に流行ったブロックチェーンゲームですね。

 

MyCryptoHeroesとCrypto Spellsは日本の会社が作ったゲームで2019年5月時点でMyCryptoHeroesが一番利用者数の多いブロックチェーンゲームとなっています。

>>CryptoKittiesで使われているNFT(Non-Fungible Token)なERC721 Tokenとは?

 

SNSだと投稿内容を全てブロックチェーンに保存しているSteemitというサービスがあります。これは記事に対してトークンが支払われ、それを取引所で監禁することで利益を得ることができるサービスです。

サービス開発に必要な知識

サービス開発に必要な知識はBitcoinやEthereumなど使用するブロックチェーンのプロトコルの理解はマストですね。

 

100%理解している必要は全くありませんが、UTXOとアカウントベースの知識、どうやって送金や受け取りが行われるのか、スマートコントラクトなどの仕組みを理解しているとスムーズに開発ができます。

 

例えばGincoのようなウォレットサービスを作る場合、通貨を受け取るためのアドレスの生成、送金するための電子署名、ブロックチェーンから送金トランザクション情報を取得する処理が必要になります。

 

これらの処理を各ブロックチェーン別に実装しないといけないので幅広くブロックチェーンへの知識が必要となります。

 

上記であげたMyCryptoHeroesなどのゲームはEthereumブロックチェーンを使っているのでEthereumの知識だけあれば作成可能ですが、スマートコントラクトの実装が必要になるのでEthereumに関するより深い知識が必要になります。

 

最先端技術を研究するエンジニア

この領域のエンジニアは少し先の未来をみて研究開発をしているエンジニアですね。日本だとLayerXCryptoeconomics Labという会社が該当します。

 

本当に最先端の研究開発が行われているので自分にはほとんど理解できないことばかりです。この領域にあうのは論文を読んだり書いたりするのが好きな研究者タイプのエンジニアが向いているんじゃないかなと勝手に思っています。

 

自分の観測範囲内で研究開発が活発なEthereumのスケーリングと匿名送金について総会します。

 

Ethereumのスケーリング

ブロックチェーンのスケーリングはどの通貨でも問題になっていますが、BitcoinとEthereumは単位時間あたりのトランザクションが多いので特に問題になっています。

 

この解決方法にEthereumではPlasmaとかCasperとかいろんな言葉が出てきますが、難しすぎて追ってません。沼ので本当に興味のある人しか理解できないでしょうね。

 

匿名送金

Zcashで導入されている機能ですね。

 

誰にいくら送ったか暗号化されいて第三者は見れないけど検証可能という技術です。ここら辺はLayerXのOsukeさんが積極的に開発、発信していたりするのでフォローするのをおすすめします。

 

まとめ

ブロックチェーンエンジニアの種類を3つに分けて解説しましたが、全然違うことをやっていることが理解できたでしょうか?さらにここからブロックチェーン別に深い知識が必要になってくるので全ての領域を一人でカバーするのは無理ですね。

 

開発が好きな人、研究が好きな人それぞれ向き不向きがあるのでしっかりと見極める必要があります。

 

ブロックチェーン業界はエンジニアの数が圧倒的に足りないので自分で学習できる力があればブロックチェーンエンジニアになれるので頑張ってみてください。本日は以上です。

The following two tabs change content below.

髙妻智一

2013年CyberAgent新卒入社 スマホゲームを作る子会社に所属し、サーバーサイドのエンジニアを担当。2年目の終わりから新規子会社の立ち上げに参加し、サーバーサイドのエンジニアリーダーとしてサービースのリリースから運用までを担当。 2018年仮想通貨のスマホウォレットを提供するGinco Incにブロックチェーンエンジニアとして入社。






よく読まれている関連記事はこちら



コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です