CLOSE

エンジニアだからセーラー服で仕事ができた さくらインターネット執行役員・江草陽太氏の自由な発想の源(全2記事)

「枠組みに従って作るだけの人」と「根本を理解している人」で二極化 さくらインターネット・江草陽太氏が示す“プログラマーの本質”

さくらインターネット株式会社にはセーラー服を着た執行役員がいます。IoTプラットフォーム「sakura.io」の立役者である江草陽太氏です。同社に新卒入社し、1年半後の24歳のときに執行役員に就任し、技術全般を統括しています。 今回は、江草氏に「やりたいことをやるスタンス」はどのように作り上げられたのか、その原点をおうかがいします。前半は、さくらインターネット株式会社に入社した経緯と、プログラミングとの出会いについて。

新卒入社のさくらインターネットですぐに執行役員に就任

――江草さんは、さくらインターネット株式会社に新卒で入社されて、1年半後の24歳の時に技術推進統括担当 執行役員 兼 CISOの職務に就任されていますが、そもそもさくらインターネットに入るきっかけは何だったのでしょうか?

江草陽太氏(以下、江草):私は大学(大阪大学)で、ロボコンのサークルをしていたのですが、隣が鳥人間コンテストのサークルでした。その鳥人間コンテストの院生の先輩が大阪大学生協でバイトをしていたのですが、その大阪大学生協の仕事がシステム開発だったんですよ。

大学の生協のバイトでは珍しくて、生協が使う受発注の管理システムや、見積もり作成のシステムも、学生を含めた自分たちで作っていました。大学から受託で頼まれたシステムを作って、生協が入札してシステムを納品するバイトをしていました。

そのバイトに勧められて入ったんですよね。実際に製品レベルになるようなコードを書くきっかけはそこで得たり、私はサーバーやネットワークができたので、当時あんまりイケていなかったサーバーの管理方法を仮想環境にして、プライベートクラウドを作ったりしました。

そこでいろいろな知識を付けて、やはりIT系がいいな、ネットワークやサーバーを触るのが楽しいなと思ったんですよね。

大学生協は、ITとは関係なく就職活動向けの企業セミナーとかもやるんですよ。企業を呼んできてブースを並べて、学生をつっこんで、各企業と対話させるみたいなイベントがあって、その手伝いもバイトの一環として行っていました。

1年生の時からいろいろな企業の話を聞いて、ざっくりとNTTに行きたいなとか、ものづくりもいいから三菱重工へ行きたいなとか最初は思っていたんですが、話を聞いているうちに大企業は自分には合わないなという感じを受けたんです。3年生の頃には「行きたい会社ないなぁ」みたいな状況になっていたんですよね(笑)。

だけど、さくらインターネットと京都のはてなさんが、さくらインターネットの石狩データセンターに見学に行くツアーみたいなのをやっていて、たまたまそれに応募したら当たったので、行ってみたんですよね。

そしたら社長の田中さんもいい感じの人で、案内してくれた社員の人もみんな楽しそうに仕事をしているので、いい雰囲気だなと思ったのに加えて、さくらは当時200人くらいだったので、これは自分がしたいことをやるのにちょうどいい規模感の会社なんじゃないか、分業制になっていないからやりたいことを下から上まで自分でできるぞと思ったんです。

規模感の割にはインフラを持っていて、データセンターを持っていて、ソフトウェアを書けばモノが動き、お客さんにサービスをITで提供できる。あれ、やりたいことと完璧に合っているじゃんと気づいたのが、さくらに入るきっかけでした。なので大学院を辞めて、代わりに就活する時はさくらインターネット1社しか当時は考えていなくて、そのまま入ったという感じですね。

石狩データセンターに見学に行った時は大学院に行くつもりでいたので、当時の社長の田中さんに「江草さんも大学院に飽きたら来てくださいよ」と言われていたのが、本当に大学院を出る前に行くことになったという感じですね(笑)。

学校関係では挫折を経験 大学院は一年目で中退

――今はさくらインターネットの執行役員という立場にいるという輝かしい経歴で、おそらく天才だというふうに言われることもあるかと思います。挫折した経験はあるのでしょうか?

江草:その時の自分にとっては、大変な問題だったということは何回もあります。今この年齢になってから考えれば、別にそのほうがよかったとか、たいしたことなかったとか、そんなに重大に考えなくても解決策はあったんじゃないのと思うことはあるんですが、わりといくつかあります。

覚えている範囲だと、中学受験ですね。第一志望校は落ちたんです。結局行った学校は第一志望校ではなくて第二志望校でした。その時はかなりショックだったと思います。結果から言えば、当時第二志望校だと思っていた学校は楽しかったし、勉強でも困らなかったし、たぶん選択としては完璧だったんですが、当時は落ちたことがかなりショックでした。

結果としてそっちのほうがよかったなと気づいたのはたぶんもっと後で、高校生くらいの時には思っていたかな。洛星中学高等学校というところなんですが、洛星行ってよかったな、洛星でよかったなと思うことは今ではあります。

――ほかにはありますか?

江草:だいたい学校系ですね。大学行くのがしんどくなった時もありました。私、大学院中退なんですよ。大学院に行かなくなったのが、大学院に入学したその月みたいな感じでした。大学院は結局学部で行っていた学校、学科、研究室そのままで、受験はしたけど結果としてはエスカレーターになったんですよね。

なのでずっと同じ大学の研究室に通っていたんですが、4年生の最後のほうくらいから学校へ行くのがしんどかったんですよね。すごく思い悩んで、研究室にも行けなくなり、不登校になった時がありました。

それは結局自分では乗り越えられなかったんですよ。当時付き合っていた彼女に「もうしんどい」という話をしたら、「そんなに行きたくないんやったら大学院辞めたらいいんちゃうの」というふうに言ってくれたのが乗り越えられた理由ですね。

「あ、そうか。辞めたらいいんだ」と。その時はもうしんどくて、自分では思いつかなかったんですよね。今から考えるとしんどいんやったら辞めたらいいやんって私もたぶん言うんですけど(笑)。別に大学院でなくたって生活はできるし、やっていけるし。それだけのことだったんですけど。それはかなりしんどくて、どうしようってなっていたことはあります。

――しんどかったというのは学校の研究とかですか?

江草:それがですね、研究は順調だったんです。プログラムを書いて、とある課題の最適なアルゴリズムを解くのが卒論の研究内容でした。

それは課題を考えて、どうやったら解けるかプログラムを書いてみて、実行して、結果が出たやつを吟味して考えるという感じで、得意なプログラムでやればいいだけだったので、そんなに難しいことではなかったんですけど……なんと言うか、研究室に行く意味を見出せなかったんですよね。今で言うリモートワークですね。リモートワークで研究できるし、研究室にまったく行かない。でも、しょうもないことなんですが、4年生が掃除しないといけない日が毎週決まっていて、まったく部屋を使っていないのになんで掃除しに行かなあかんのやろう、みたいな(笑)。

そういう理由を見出せなかったのが、だんだん無意識にしんどくなってきて、研究室に足を運ぶのもしんどい、吐き気がするみたいになりました。理由はないんだけど、しんどいっていう感じだったんですよね。普通は平日の何時から何時は必ず研究室にいなさいみたいなコアタイムがあるんですが、先生がすごくいい人で、研究が進むならリモートでもいいですよみたいな、柔軟なところだったんですが、私がしたいことに合わない部分もあったり、非合理なルールもやはりないことはなかったんですよね。

ほかにも、同じ学部生の4年生の中で輪講して、順番に持ち回りで教科書の中身を教えるみたいなやつもあって、その授業はTCP/IPのネットワークの授業で私はその授業でやる範囲のレベルはほぼ完璧に理解してふだんも使っているし、アルゴリズムも知っているけど、ほぼ完璧に理解していることを私の担当じゃない時も教えないとあかんしみたいな。

極端に言うと、なんでお金を払って仕事をしているんだろう、みたいな(笑)。いろいろなしょうもないことの積み重ねでしんどくなったというかんじです。

小学生で出会ったプログラミングは「なぜか動いた」と「なぜ動いた」を繰り返して習得

――そもそも、江草さんとプログラミングの出会いはどういうものだったのでしょうか?

父が工業高校で化学教諭をしていて。土日はクラブの顧問で学校に行かないといけなくて、よくついていって職員室で遊んでいました。

工業高校だとその時代でもすでにパソコンはあるし、ほかの先生もパソコンの使い方に詳しかったりで情報が入ってくるし、ものもあると。自然に興味を持ったのが最初だと思います。

プログラミングは、自分が思ったとおりに動く。人が手作業でやるのは大変なことが、やり方を書くだけで人がやるよりも圧倒的に早く、面倒くさいこと、あるいは人間では難しいことができるというところがすごく好きだったんだと思います。

プログラミングは画面の上に出るとか、音が出るとかだけなんですが、電子工作して、両方をくっつけると思ったとおりにものが動くというのがすごく楽しかったんだと思います。

――プログラミングは独学ですか?

江草:そうですね。パソコンだったりの環境は両親が用意してくれました。「デスクトップパソコンが欲しい」と言った時も「いらないでしょ!」みたいなことはなく、「プログラミングするんやったら、してもええし」と提供してくれました。父はプログラミングはできないので、基本的には独学です。

当時はプログラミングの情報はインターネットより本が多かったので、本を買って本を見ながら書いてあることを写してみて実行したりして独学で勉強しました。

――やってみた時に、「ここがわからない」「理解できないな」みたいなところで諦めないで進められたのはなぜでしょう?

江草:小学生は暇なので(笑)、とにかく時間はたくさん使っていたんだと思います。動かへんのがなんでだろうと考えたり、とにかく意味はわからずに書き換えて動かしてみたり。ここに100って書いてあるけど、この100は何の100なんだろうとか思いながら変えてみたりとかしました。

理解して試すんじゃなくて、手当たり次第に試すというのをたぶんやっていたんだろうなと思います。そのうえで知らないことを知ったり、知らない挙動を知ったりのの積み重ねで、「なぜか動いた」と「なんで動いたか」をたぶん交互に繰り返して学習していたんだと思います。

自分が書いたコードでなんで動いたかをちゃんと理解しようとしていたことがよかったのかなという気がします。なんとなく動いたらそれでよしとしていたら、理解が進まないままで、もっと難しいことをするためにはもっと基本的なことの理解が必要なのにわかんないから進まないとなると思うんですが、「動かせた範囲内は理解もする」ということを繰り返していたから詰まることなくできたのかなという気はします。

ロボット制作で培われた「コミュニケーション力」「全体設計力」

――「なぜか動いた」と「なぜ動いた」を繰り返してプログラミングに対する理解を深めていったのですね。もともと電子工作をやっていたこともあって、自然にロボットにも興味が出てきたのかなと思うのですが、ロボット研究部の創立メンバーというところで、設立する時に、苦労したことはありますか?

江草:小学生の時に、市販のキットに部品とプリント基板が付いていて、指定されたところに部品を付けてハンダ付けすれば、動くみたいなエレキットとか秋月のキットとかで電子工作をしていたんですが、自分で回路設計をまったく最初からして、それが単にLEDが点滅するだけではなくロボットとして動かないといけなくて、プログラムも入れるという高度な回路設計とものづくりをしないといけないことに関しての知識はなかったんですよね。

なんとなくそういうことをする本は読んでいて、例えばマイコンっていうCPUみたいな部品はプログラムが書けて、プログラムどおりに動くとか、トランジスタを使えば電気をオンオフできたりとか、モーターを回したり止めたりできるし、この2つをくっつければプログラムでもモーターが回せるくらいのことは知っていたんですけど。

ちゃんと回路設計をして、例えば小さいモーターじゃなくて大きいモーターでも回るような部品の選び方や回路の設計の仕方のノウハウはまったくなかったので、最初のほうは試行錯誤が大変だったと思います。

中学、高校はロボカップジュニアっていう世界大会まである学校関係なく出られるロボットのコンテストがあって、それに出ていました。大学に入った時はNHKが高専ロボコンとは別に大学ロボコンをやっていて、そっちに出ていました。

――ロボット制作やコンテストに出場したことが今の仕事で役立っているなと思われることはありますか?

江草:チームでものづくりをすることですかね。趣味で1人でプログラムを作ってなんとなく動かして、それで満足するんだけではたぶん仕事にはならなくて、それはロボコンにも言えることだと思います。

きちんと役割分担して、私はこれ作っとくから、その間に誰かにはこれを作っておいてもらおうとか、あるいはこれを作っておいてもらって、できたらくっつけようとか。そういうコミュニケーションを取らないといけないし、役割分担しないといけないし。

あとは自分が作ろうと思ってもうまくいかない場合は、教えてもらったり、一緒に考えてもらったり、他人が詰まっているなら、私のはもうすぐできそうだし、そっちを見ないとあかんなとか。そういう仕事をするうえでの一般的なコミュニケーション力はついたんだろうなと思います。

――今のお仕事にもかなり活かされていらっしゃるんですね。

江草:そうですね。あとはロボットを作るうえでの全体設計をする力。モーター3つにしておいて、こことここは機能的に分けてつなぎたいけど、どうやってつなごうとか、あるいは個別の機能を作るかはいったん忘れて、大きくざっくりとこういう組み合わせでこういう機能で作ろう、みたいな全体設計をする力もたぶんついたんだろうなと思います。

――さくらインターネット株式会社では、IoTプラットフォーム「sakura.io」の開発責任者としてサービス設計と開発を行われていますよね。何が一番大変でしたか?

江草:使っている部品がEOL(保守終了製品)になるとかですね。でも在庫があるからねぇみたいな話で、エンジニアとしては「そんなん言っとらんと次の早く作らんかったらEOLになるじゃん」みたいな、そういう経営と、やらなあかんことのバランスをどうするのかというところは私が決めることではないんですが、難しかったポイントの1つだなと思います。

――そういった紆余曲折や大変だったこともあったと思うんですが、ここまで来てどうですか?

江草:実際たくさんのお客さんに使っていただいたり、それによってできたサービスが事例として出ていたり、みんなが知らないところで役に立っていたり、うまいことできてきているので、やってよかったなと思っていますし、これからももっと良くなるといいなと思っています。

当時は0から1を作るところで、今から考えても少なくともうちの中では私以外にはできなかっただろうなと思っているので、やってよかったとは思う一方で、これからは0から1じゃなくて、1をもっといい感じにするとか、売り方を考えるとか、知ってもらう方法を考えるとか、そういう成長をしないといけないフェーズだなと思っています。

機能追加などやはり難しいこととかはあって、やり方考えたり、実現方法を考えたりはするんですが、担当のエンジニアはしっかりチームとして私以外にいて、いいようにしてもらっているので、続いていて、いいなと思っています。

プログラマーは「枠組みに従って作れるだけの人」と「根本を理解している人」で二極化をしている

――独学でプログラミングを身につけて、ご自身の強みとなったというところで、U22(U-22 プログラミング・コンテスト2021)の審査員を務められていると思いますが、今の若いプログラマーを見て、どう思われていますか?

江草:二分している感じはします。昔のプログラミングって、ある意味やり方が決まっている。C言語で書きなさい。C言語で書くしかないですという感じで、理解しなければ書けません。できるようになれば、だいたいできることは一緒なんですが、1パターンというか。

最近はなんかよくわからんけど動くものを作れるという作り方もあって、便利になった一方で、理解せずにものができちゃっている部分があります。それを理解せずプログラミングしている人と、ちゃんとよくわかって作っている人の両方に分かれているなという気はしていて。

それが悪いことではないと思うんですよ。あまり理解していなくてもすごいものが作れるというのは社会を良くするのにすばらしいツールなのでいいなと思う一方、しっかり根本からプログラミングだったりコンピュータの仕組みだったりを理解したうえで作らなあかんものを作れる人が、総数で増えているのか減っているのかどっちかわからないなという感じを受けます。

ただ、インターネットのおかげだと思うんですけど、高校生でもよく知っている人はやはりいますし、プログラミングやIT系の分野は年齢が関係ないんだなっていうのをすごく実感できます。

――今、若いプログラマーが二分されているというところですが、例えばプログラミング教室や情報商材が販売されていて、プログラミングがすごく好きというわけではないけれどもエンジニアを目指す人がちょっと増えているのかなと思うのですが、どう思われますか?

江草:それは学生向け、子ども向けに限らず、大人向けでも「初めてでもエンジニアになれて転職できる!」みたいな(笑)。話題になりますよね。

子ども向けは多少プログラミングの本質じゃなくても触らせることが親からすると教育の1つになると思いますし、触れることによって興味を持って、ここじゃなくてもっとしっかり学びたいなど次に進むステップとして重要だと思います。なので、子ども向けはいろいろありかなと思うんですよね。

大人のはどうなんでしょうね? それでなんとなく枠組みにしたがって作れるだけの人が、例えばさくらに来てもらって仕事として成り立つかというと微妙だなぁと思います。それでもいいんだけど、そのあと苦労するんちゃうかなという気はします。やはり理解していない仕事をするのは難しい。

なんか知らんけど、この道具でこうすればできあがるっていうのを本業にしてしまうと、ふだんの使い方では対応できないのが来たときに対処のしようがないと思うので、エンジニアはなんとなく儲かるからと理由で付け焼刃的にやるのはやめたほうがいいし、それを助長するのはどうなんかなぁという気はしています。

――そういう点も踏まえたうえで、江草さんが思う優れたエンジニアはどういうエンジニアだと思いますか?

江草:きちんと理解をしているエンジニアだと思います。プログラムが動くところまでの根本からの本当の理解でいうと、自分が責任持ってやる範囲が動くための根本的な仕組みは理解することが大事かなと思います。これができれば、幅広い範囲で、あるいは時代が変わって使う技術が変わってもエンジニアとしてやっていけるし、しっかり仕事ができるエンジニアになれるんだろうなという気はしています。

ツールとか開発環境とかってドンドン新しいのが出てくるんですけど、ロストテクノロジーってITにはないんですよ。例えば鉄だと、古代のローマかどこかでいい鉄が実在はしているんだけど、どうやって作ったかわからないみたいな、本当の意味での失われたテクノロジーは過去にはあったと思うんですが、ITの場合は、機械学習みたいなすごいソフトウェアがあっても、それって私が生まれる前からあるコンピュータのCPUの作りと、プログラムの書き方、動く原理からなにも変わっていなくて、積み上げた先の一番上が機械学習なんです。

当然下から上まで全部使っているんですよね。使っていない技術というのがない、ロストテクノロジーのない業界なので、根本から理解していないとやっていけないんだろうなという感じがしています。

(次回へつづく)

続きを読むには会員登録
(無料)が必要です。

会員登録していただくと、すべての記事が制限なく閲覧でき、
著者フォローや記事の保存機能など、便利な機能がご利用いただけます。

無料会員登録

会員の方はこちら

関連タグ:

この記事のスピーカー

同じログの記事

コミュニティ情報

Brand Topics

Brand Topics

  • 今までとこれからで、エンジニアに求められる「スキル」の違い AI時代のエンジニアの未来と生存戦略のカギとは

人気の記事

新着イベント

ログミーBusinessに
記事掲載しませんか?

イベント・インタビュー・対談 etc.

“編集しない編集”で、
スピーカーの「意図をそのまま」お届け!