#はじめに
私は35歳になるまでプログラミングの経験は全くありませんでした。真っ黒な画面に難解な英数字を並べるのは、特別な人がするものだと思っていたからです。自分には一生関わることさえないと思っていました。しかしBitcoinに出会い魅了され、その仕組みを応用したシステムを開発したいと考えた時、プログラミングが避けて通れないことに気がつきました。それから一念発起しいざプログラミングの世界に飛び込もうとした時、そもそも何をどう初めたらいいのか分からず途方に暮れました。
それから1年後、暗号通貨業界にプログラマとして転職することが出来ました。この記事を書いた理由は、同じ様に悪戦苦闘している方々の参考になればと思ったからです。転職にあたり、多くの方から多大なる恩恵を受けて来ました。その恩に少しでも報いたいと思い、僭越ではありますがこの様な記事を書かせて頂きました。
#この記事の対象者
- プログラミング未経験者だけどプログラマとして働きたい方
- Bitcoinに関連した業務にプログラマとして携わりたいと検討中の方
- Bitcoinまたはプログラミングを学びたいと思っている方
#勉強を始める前にしたこと
####業界で働いている方に連絡をした
SNSや勉強会を通して、暗号通貨業界で働く方々に連絡を取りました。根気強くコンタクトを取ることで相手に熱意が伝われば、いずれ味方になってくれる人が見つかるはずです。業界で働く方々の情報は、ネットの情報とは比較にならないほど有用な情報です。情報収集をすることで仕事の内容をより明確に認識し、目指すべき目標を定めることが出来ました。
####希望する会社を見学しに行った
目標が明確になると、自然と希望する会社を決めることができました。目的はあくまで採用されることだったので希望する会社の雰囲気を知り、自分を知って貰う為に会社訪問をさせて頂きました。実際に職場に行くことで現場の方と話すチャンスがあるかもしれないと思ったからです。お話をさせて頂いた中で、自分がやりたいことと会社がマッチングするか確認できました。会社が本当に人材を必要としているのか、どんな人材を必要しているのか、今の自分には何が足りないのかなど、現場に行かなければ分からない貴重な情報を得ることができました。
####プログラミングに詳しいメンターを探した
プログラミングに関して、いつでも気軽に質問できる人が必要だと感じました。私の場合は、幸運にも友人にプログラマ熟練者がいました。その友人が快くメンターを引き受けてくれ、精神的なサポートもしてくれたことで、最短で転職を実現することができしました。熟練したメンターは自らの豊富な経験から、目的達成までの最短距離を示してくれます。また疑問に思ったことに即座に応えてくれ、間違った場合には軌道修正してくれます。
####期限を最短で設定し計画を立てた
転職活動期間中は転職に関わること以外は一切やらないと決めました。期限を最短で設定することで、自分にプレッシャーをかけ、目標を達成することだけに集中しました。また短いスパンで計画を立て成果を確認することで、モチベーションを持続し途中で気持ちが折れないように工夫しました。
#Bitcoinの勉強法
Bitcoinの知識はもちろん、ないよりはあった方が良いと思います。ですが場合によっては、転職してから勉強しても良いかと思います。私は転職に必要だったので、勉強しました。
####「A peer to peer digital cash system」を繰り返し読んだ
まずはホワイトペーパーを読むことからはじめました。ただ読むだけではなく、内容が理解出来るまで繰り返し読みました。ホワイトペーパーは分からない単語だらけだったので、Bitcoin Wikiで単語の意味を調べました。そもそも単語の説明すら分からない場合はDeveloper Documentで具体的な内容を確認しました。
####「Mastering Bitcoin: Programming the Open Blockchain」を読んで理解を深めた
ホワイトペーパーよりも更に踏み込んで、詳しく勉強をする為にこちらの本を読みました。学習して得た内容をアウトプットしたかったので、理解した内容を整理してブログに書きました。インプットすることだけでなく、アウトプットすることで更に頭の整理が出来ました。
####ブロックチェーン大学校を利用した
独学だけでは補いきれない部分に関しては、大学校に通い学びました。自分が理解した内容を確認し、間違った解釈を修正する意味でとても役立ちました。講師の方が現役のトップエンジニアだったので、具体的な質問に的確に答えて頂き、安心して授業を受けられました。自分では追いきれない最新の情報を、日本語で学べたのが特に良かったと思います。
#プログラミングの勉強法
経験がない場合、どんな言語を使えばいいのか?本は何を読めばいいのか?どのレベルまで勉強すればいいのか?どんな勉強をすればいいのか?何からはじめればいいのか?など疑問は尽きませんでした。
####「どんな言語を使えばいいのか?」「どのレベルまで勉強すればいいのか?」
事前に転職を希望する会社の情報収集していたのでこれは明確でした。会社から課題を頂いていたので、その課題をこなすのに必要な言語を使い、完成させるのに必要な最低限のレベルまで勉強しました。また勉強した成果は、Githubにあげて人に見て貰いました。
####「本は何を読めばいいのか?」「どんな勉強をすればいいのか?」
書籍を使った勉強はしませんでした。読んでも殆ど覚えていられなかったのと、途中で挫折することが多かったからです。公式ページのチュートリアルで十分だと感じました。チュートリアルが終わった段階で、何かしらのアプリを作る中で学びました。もし分からない事があればその都度ネットで調べるクセをつけ、調べても分からない場合は、ひとりで悩まずに積極的にメンターに聞いていました。
####「何からはじめればいいのか?」
まずはfreeCodeCampという無料サイトを利用して、勉強をはじめました。読んで覚えるよりも圧倒的に「手を動かしながら(コードを書きながら)」学ぶ方が覚えやすかったです。読んだだけだと殆ど頭に残らなかったので何度も読み返していましたが、1度でも書いたコードは断片的にでも後から思い出すことが出来ました。
#まとめ
####良き指導者に出会った
これに尽きると思います。前職が全く関係ない他業界だったので、経験から物事を判断することが出来ませんでした。手探りの状態でしたので、私はサポートが必要でした。たった1人では決して成し遂げることは出来なかったと思います。
####好きだから続けられた
3年前にBitcoinに出会ってから、ぼんやりと暗号通貨関連の仕事がしたいと思っていました。その間一度も諦めることなく続けられたのは、単純にBitcoinが好きだったからだと思います。自分を突き動かしたのは情熱で、人を動かしたのも情熱でした。
####勉強方法は会社からヒントを貰った
会社毎に求めている人材が違うので、具体的にどんなスキルが必要なのか直接希望する会社に聞いてしまいました。聞いたことで、自分がどんな勉強をすればいいのか明確になりました。求人情報から想像しあれこれするよりも、はじめから聞いてしまった方が効率が良いです。
####年齢や経験はどうにかなった
35歳にしてプログラミング未経験と言うのは、この業界において市場価値は殆どありませんでした。風当たりは強く、全く相手にされないことも多々ありました。そんな状況でも、常に質の高い努力をするように努め、最短で成果を出せるように心がけて来ました。そして最終的には希望の会社に採用して頂きました。年齢や経験もやりようによっては、何とかなるもんだなぁと思いました。
#おわりに
要点だけをお伝えしているので、もしかしたら計画的で順風満帆な転職活動だったように見えるかもしれません。しかし、実際は全くそんなことはありませんでした。Bitcoinに出会ってから3年かかりました。その間に採用して頂いた会社は、2回不採用(保留)になっています。
この業界は人材不足だと聞いてたので、すぐにエンジニアとして採用して貰えると思っていました。しかし、当然ですが現実はそんなに甘くありませんでした。人材が不足してるのは、会社が求めるスキルに応えられる人材が不足しているだけで、誰でも良いわけではなかったからです。暗号通貨の技術は、世の中を変える可能性を秘めていると思っています。それだけに求められるスキルは高いと感じました。ただ、スキルがあってそれを証明できれば、いくらでもチャンスはあると思います。
この記事を読んだことで、仮想通貨エンジニアに興味を持ち頑張ろうと思って頂けたら嬉しいです。もしご意見などがありましたら、ご遠慮なくコメント頂ければと思います。いつかこの業界でお会い出来ることを楽しみにしています!