フリーランス・エンジニアへのキャリアチェンジを目指す

       〜MPSCamp受講者 園田さんのケース〜

2018/4/16 インタビュー

目次

[1] 美大と卒業後の季節工時代
[2] エンジニアになって
[3] MPSCampに入ろうと思った理由、そこで得たもの
[4] 数学、語学、機械学習を学ぶ時間をつくる
[5] これからのキャリアのイメージ&やってみたいこと

[1] 美大と卒業後の季節工時代

園田大輔と申します。
まず、簡単に自己紹介致します。
東京出身、2004年に多摩美術大学の美術学部絵画学科油画専攻を卒業しました。
2008年より10年間ほどWeb開発エンジニアをしていましたが、2018年5月に退

職し、フリーランスとして活動することが決まっています。美大に進学した理由

ですが、子供の時から、特に意識をすることはなく人より絵を上手に描くことが

出来たからです。小学校の美術の授業で先生に似顔絵を褒められた時に、将来は

アートの世界に進みたいとぼんやり考え始め、高校2年の進路選択で美術系の大

に行こうと決めました。
芸大志望だったのですが、何年か浪人をし、努力だけで入れる大学ではないと気

付いて美大志望に切り替え、多摩美に合格。

私が在籍していた油画科は絵だけに留まらず、様々な表現ができる学科でした。
空間芸術をする人もいたしアート・パフォーマンスをする人もいました。
制限といえば人に迷惑をかけないことくらいで、もうなんでもOKというところ。

フリーダムで楽しかったです。変な人も大勢いました。

ただ、アートだけやっていたために卒業時点では進路が決まっておらず、大学の奨学金返済もあったので、旅行好きという理由だけで2年ほど日本中をぶらぶらしながら季節工として働きました。
春は群馬のキャベツ、夏は山小屋、秋は北海道の鮭工場、冬は沖縄の製糖工場、みたいに、住み込みの仕事がいろいろあるのですね。
僕の友人の中には卒業後もちゃんと作品を作り続けている人達が多くいて、日本を出て外国に出て行ったり、自由にやっている彼らを見て羨ましいなという気持ちはずっとありました。
季節工やっていた時期はそこそこ客観的に自分のアートの才能のなさに気付いており、なんとか食べていく道を見つけなければという気持ちもあって、貪るように小説やビジネス書などを読んでいました。
そして、鹿児島の牧場で働いていた時に読んだ本で、衝撃を受けまして。
一つ目は「ウェブ進化論」(*1)。
二つ目は「グーグル―Google 既存のビジネスを破壊する」(*2)。

あの時のショックは忘れられないです。
面白すぎて、牧場で牛に餌をやりながら片手で読んでいて、あやうく雄牛に襲われかけたり(牧場の敷地は複数の雌牛と1頭の雄牛で構成されており、雄牛は雌牛を取られまいとたいてい気が荒い)。
恥ずかしながら、それまで私はビジネスというと「なにか物理的なモノを作り、手間賃を上乗せして人に売る」という単純な図式しか知らなかったのです。
そんな考えしかなかった人間の頭の中に、Googleの「検索エンジンの順位を売る」「検索ワードに関連付けたキーワードをオークションで売る」という先進的なビジネスのやり方がなだれのように入ってきて。
こんな世界があるのかと。
我ながら実に単純だと思いますが、その時にプログラマになろうと決めました。

 

 

[2] エンジニアになって
奨学金の返済を終えた後、東京に帰って専門学校に通いました。
そこではJavaとPHP、Linuxのコースが選択できたのですが、Webアプリケーションがすぐに作れそうなPHPを選択しました (*3)。
そこでPHPとJavaScript、データベース、Linuxの基礎を学び、2008年1月、卒業するときに学校から紹介された会社に入社しました。
それがエンジニアの出発点です。

入社して10年間、キャリアとしてはずっと開発部にいました。
会社からはSEのキャリアパスも提示されましたが、プロダクトを作るという点において、上流よりも直接コードを書くほうが面白いと感じていたためです。
仕事では、WebのCMSのいろんな機能を作る機会に恵まれました。
基本的な会員登録とか、管理側の機能とか、あとはAPIとかバッチとか決済とかも一通りやりました。

そちらもそれなりに面白かったのですが、その頃はメディアアートという分野のアートが出てきて。
プログラムを書いてなにかアート作品を作るという新しいアートの方法に興味を持ちました。
Makeという言葉が出てきたのもこの時期ですね。
MITの名物講座で「ほぼ、なんでも作る方法」というのがあるそうですが、プログラミングさえできれば作れるものの幅が格段に広がります。
でもプログラムが書けないと「なんでも作れる、というわけにはいかなく」なってしまうのです。

仕事をやりながら、プライベートではハードウェアを使っていろいろ作っていました。
Arduino (*4)というマイコンがあるのですが、それを使って畑を借りて作物を育てながら温度や湿度などの環境モニタリングをしてみたり。
ガラス瓶の中の生態系(リトルバイオスフィア)を作り、瓶の中の環境モニタリングと生態系の変化を観察したり。

Arduino以外に、Raspberry Pi (*5)も使っています。
Pythonを学び始めたのも、Raspberry Piを触り始めたのがきっかけでした。
2年前から独学でちょこちょこコードを書きながら遊んでいたのですが、その頃から、機械学習という分野に興味が出てきて。
これからブレイクしそうな技術だということもあったのですが、なんとなく、アートにも使えるかも、という予感を感じまして。
しかし、本屋で機械学習の技術書を立ち読みして、「これはちょっと独学では自分の手に負えない」と思いました。
そんな時に、MPSのPyCampの申込ページ (*6)を見つけまして。

 

 

[3] MPSCampに入ろうと思った理由、そこで得たもの
MPSCampに参加した理由ですが、いくつかあります。

1つ目
「そもそもPythonを学ぶ」動機があったことです。
上記でも言いましたが、人工知能分野などが盛んになって、Pythonが流行っていて、エンジニアとしての給料もPHPよりも全然高いんです。
また、いずれはシステムと呼べるほとんどのものにAIが導入されるようになった時、これはもう圧倒的に人手が足らなくなるだろうと思いました。

2つ目
学ぶスタイルです。
「短期間に集中して学ぶ」というMPSCampの進め方が自分のスタイルに合っていると思ったことです。
独学だと集中できないというのもあります。
Pythonや機械学習のセミナーは色々と開催されていますし、参加したことも何回もありますが、セミナーの進行速度が早いのと、なによりいずれも単発で数時間で終わってしまうものが多くて、これだとあまり学んでいる感じがしませんでした。

3つ目
最終目的が、フリーランスになる、ということに焦点を当てた講座であったことです。
事実、講座の成績優秀者には、報酬30万円の仕事を受注する機会があるのです。
MPSCampの参加費は30万円ですので、うまくすればすぐに回収できるし、開発実績は残せる。
これは自己投資として是非やらなければならないと思いました。

会社の規模にもよりますが、基本的に一つの会社に所属していると、仕事がルーチンワークになってきます。
数年で転職が珍しくない業界で私は珍しく10年近く同じ会社に属しており、仕事も安定してこなせるようにはなっていたのですが、ソフトウェアエンジニアって、常に新しいことを学ばないと生き残れないのです。
安定しているということは、エンジニアにとってはゆっくり死んでいくと同じこと。
この先安定して同じ仕事をやり続けることが、実はリスクそのものなのです。
そして、フリーランスになるということは、責任が増える代わりに、自発的に新しい種類の仕事を選べるということです。

その点で、MPSCampに入る前に期待していたことと、実際に学んだことは、そんなにギャップがありませんでした。自分の想定した技術が得られたと思います。
PythonのWebアプリケーション・フレームワークであるDjangoは知ってはいたのですが、ずっとアプリケーション層で仕事をしていたために、汎用言語であるPythonのWebサイトのインフラのセッティングがわからずに勉強を先延ばしにしていました。
MPSCampではAnsible (*7)を使ってデプロイの設定方法なども学ぶ機会があったため、その点も良かったです。
あとはMPSCampではデータのビジュアライズをやりました。
視覚的なアウトプット手法は、アートをやっていたこともあり、かなり面白かったです。

講座は、データビジュアライズと機会学習の2回受講しました。
2回目は山口県で8日間かけて開催されていたものですが、東京から参加しました (*8)。
1日16時間近く缶詰状態で、まさに合宿という感じです。
アメリカの「ハックリアクター」というプログラミングスクール (*9)では、3ヶ月くらい合宿形式でガッチリとプログラミングの勉強をやるんだそうです。
参加が200万円ほどかかるけど、その後、キャリアチェンジし、エンジニアとして働ける機会が与えられる。
それを知ってから、集中してプログラミングの勉強をやるスタイルが自分に合っているのではないか、とずっと思っていました。
MPSCampは期間こそ短いですが、その分会社勤めをしながら実践できるため、その点も助かりました。

また、毎日必ず勉強するクセがついたことも大きなメリットです。
それまでは、仕事に必要な物を勉強するという受け身の姿勢だったのですが、今では積極的に日々学ぶようになりました。
日本って会社だと年功序列とかありますし、プログラマ35歳限界説なんてものもはびこっていたりします。
しかしながら、健康に気を使ってまめに運動し、良質な食事をしていれば、十分新しいことを学び続けることができると思います。

ところで、MPSCampって、もっと参加者がいると思ったんです。
でも参加してみたら、Tさんと私の2人しか受講生がいなかったんです。なんでだろうなと思いました。

MPSCampもハックリアクターも、自分の人生の軌道修正を助けてくれるよい機会だと思います。
お金はそれなりにかかりますが、その後の数十年の時間をどう生きていくのかを考え、「どうやってどれくらいの期間で投資金額を回収できそうか」をイメージすることができれば、
自分にとって本当に高い金額であるのかどうかちゃんと判断できると思います。
私は安いと思いました。

 

 

[4] 数学、語学、機械学習を学ぶ時間をつくる
数学は中学まではすごく好きな科目の一つで、友達と問題を作ってお互いに解く時間を競ったりしていました。
しかし、今考えるともったいないことに、高校の進路選択で美術系に行こうと思った時に脱落というか、勉強しなくてよくなったのでやめてしまったのです(笑)。
2回目に参加したMPSCampは機会学習ということもあり、数学を重視して学んだのですが、正直、この時ほど数学を止めてしまったのを後悔したことはありませんでした。
この時は基礎だけだったのですが、かなり苦労し、ようやく動くニューラルネットワークのコードができた時はホッとしました。

プログラミングを学ぶ前に、数学的な考え方が無理だといって諦めてしまう人も中にはいると思います。
例えば、私は家族に自分のやっているプログラミングのことを説明した時、「ああ、自分には無理だ、理解不能」という反応が返ってきました。
しかし、私はプログラミングを始めた時にこの抵抗感がなかった。
もしかしたら、数学を楽しんだ経験を持っていたことが、うまくプログラミングへの抵抗感を消してくれたのかもしれません。
とにかくこれは私にとってラッキーなことでした。

とはいえ機械学習に出てくる数学は私にとってはまだ難しいため、線形代数や微分積分を定期的に勉強しています。
フリーランスになろうと決めた理由の一つに、機械学習系の分野は勉強する時間を確保しないと他の機会学習エンジニアに追いつかないという理由もあります。
会社から帰ってから機会学習と数学をやるというスタイルでは、まともに仕事ができるようになるまでに時間がかかりすぎると感じました。
そこで、フリーランスで週2,3日ほど働いてあとは勉強する、というスタイルをとろうと決めました。
フリーランスの仕事というのは、責任が増える分、会社勤めより短時間で稼げるはず、時間単価が高いだろうというのも、それを決めた理由の1つです。
会社員と同じくらいの収入しか得られないのであれば躊躇していたと思います。

 

 

[5] これからのキャリアのイメージ&やってみたいこと
キャリアのロードマップとしては、5年後までに、場所と仕事を自由に選べるようになりたいと思っています。
また、これは夢なんですが、一度実験的に、海外旅行しながら1年位リモートで仕事という生活スタイルを試してみたい、と思っています。
フリーランスというと安定しないというイメージもありますが、技術力のあるエンジニアは仕事に困ることはないそうですね。
AIによって銀行員でさえリストラされる現代において、フリーランスや起業は、むしろ経験しなければならないことである、とさえ思います。

直近では、フリーランスとして週2〜3日稼働する案件を確保しつつ、残りの時間を勉強や起業準備に充てたいと思って動いています。
実は、MPSCampで一緒に学んだTさんという方と、講師の金子さんと3人で、プロダクトを作って起業しよう、という話が出ているんです。
アクセラレータプログラムにも既に申し込み、活動を開始しました。

あと、エンジニアは定期的なアウトプットが大事だなと思っており、現状はあまり実現できていないため、スライド、ブログなどで発信をしていきたいと思います。
そういうところから人の繋がりも生まれると思いますので。
今、勉強会のコミュニティなども登録しているだけでなかなか行けていなくて。フリーランスになったら意識的に行くようにしたいなと思っています。

また、いずれアートもちゃんとやりたいと思っています。
実は、ドローイングマシンという絵を描く機械を試作してみています。 (GitHubはこちら https://github.com/dsonoda/drawingmachine )
これは、説明しづらいんですが、モーター2つあって糸垂らしてペンをつけて、モーターの動きだけで絵を描くという機械です。
いずれは、機会学習と連動させてなにかを描かせる、というような試みをしてみたいですね。

顧みるに、自分の行動原理の軸は、「自由」であるかどうか、それに近づいているかどうか、であったと思います。
大学を卒業した時に感じていた不安は経済的にこの先やっていけるのかどうか、ということが最も大きかったです。
これはもう身も蓋もないのですが、お金がないと生活ができない。
つまるところ、お金を得るための仕事を自由に選べることこそが自由であると、今でははっきり思います。

常々、私は人よりも2周くらい周回遅れで人生を歩んでいるように回り道をして、今ようやくエンジニアとして独立のための一歩を踏み出すに至ったなと思っています。
しかし、今は幸いにも周囲の人々に恵まれ、不安よりも希望の方が大きいです。
この状態でスタートを切れることに感謝しつつ、さらなる努力を重ねていきたいと思っています。

 

----------------------
《用語説明》

*1 - 「ウェブ進化論 本当の大変化はこれから始まる」 (ちくま新書) 梅田 望夫 著 https://amzn.to/2JjK0Ur

*2 - 「グーグル―Google 既存のビジネスを破壊する」 (文春新書) 佐々木 俊尚 著 https://amzn.to/2qTcfSj

*3 - Javaとは、アメリカのオラクル社が管理・運営するプログラミング言語。大規模開発に向いているとされる。PHPとは、Webのサーバーサイドで動くプログラミング言語。Lunuxとは、クライアントやサーバで使われることが多いオペレーティング・システム。

*4 - Arduinoとは、マイクロコントローラーと最小限の周辺回路を備えた小型基板。

*5 - Raspberry Piとは、イギリスのラズベリーパイ財団によって開発されている小型コンピュータ。

*6 - この時の申込ページはこちら。 https://mpsamurai.doorkeeper.jp/events/60907

*7 - Ansibleとは、オープンソースのサーバなどの構成管理ツール。

*8 - この時の申込ページはこちら。 https://mpsamurai.doorkeeper.jp/events/64706

*9 - ハックリアクターに関する記事はこちらを参照。 https://forbesjapan.com/articles/detail/20733

MPSCampに参加した園田さん

(c) Morning Project Samurai Inc.