blog

旅行とプログラミングを同時に行うライフスタイルについての経験と考察。

約3ヶ月前、私が勤めていた会社が突然閉鎖されました。\n閉鎖の理由はこの記事の内容とは関係ありませんが、簡単に言うと、投資家が契約を破棄し、私の主な仕事であった開発中の製品が打ち切られたということです...

Jan 18, 2015 · 5 min. read
シェア

3ヶ月ほど前、私が勤めていた会社が突然閉鎖されました。

閉鎖の理由はこの記事の内容とは関係ありませんが、簡単に説明すると、投資家が契約を破棄し、私が主に担当していた開発中の製品が終了せざるを得なくなったということです。

こんなことになるなんて思ってもみませんでした。突然無職になり、休暇から帰ってきたばかりで、今の安定した仕事に中長期的な計画を立てています。

でも、一夜にしてそうなってしまったので、次のステップを考えなければなりませんでした。

そうして突然、私は荷物もローンも子供もなく、わずかな貯金もあり、すぐにやらなければならないこともないデジタルノマドになったのです。

東南アジアのフリーポート

ヨーロッパのいくつかの都市を旅行したことがあるので、世界の別の場所に行きます。

特に私の場合、ダイビングやサーフィン、その他のアウトドアスポーツが大好きなのですが、オーストラリアはおろか、いくつかの「安い」国でもお金がかかります。

そこで、東南アジアが選ばれるのは明らかです。予算が限られている旅行者にとってはメッカです。ネット上には行った人のブログが無数にありますし、一生に一度は経験すべきことのひとつだと思います。

幸いなことに、まだ会社勤めをしているときに、仕事が終わってから数時間だけ働く小さなクライアントが何社かあって、給料はそれほど高くないのですが、移動中の経済的な保障としてはかなり大きいです。

1ヶ月の準備期間を経て、彼女と私はバックパックを受け取り、タイ、ベトナム、ラオス、カンボジアへの旅行計画を開始するためにバンコクへ飛び立ちました。

[]

[]

[]

ポーランドのクライアントのために2ヶ月間リモートで仕事をしています。このような簡単な仕事のほとんどは、既存のウェブサイトの保守的な修正なのですが、より大きなRailsプロジェクトを引き受ける方法を見つけてから、このプロジェクトではゼロから開発する必要が出てきました。

これまでのところ、非常に有意義で啓発的な経験でしたが、些細な問題も明らかになりましたので、ここで共有したいと思います。

#p#

主に、私は2つの非常に重要な問題に何度も何度も向き合う必要があると感じています:

1) 移動中にできるプロジェクトの種類の制限;

2)オフィス立地への非依存性に関する誤解;

小規模でシンプルなプロジェクトのみ。

これは私にとって大きなデメリットです。最初のうちは、小さなプロジェクトをこなせば何とかやっていけると思っていたのですが、現実は、やりきれなさや無駄な時間が増えていく一方です。

そう、タイのプレー島にある小屋でノートパソコンのスイッチを入れ、ビーチフロントの隣でクライアントとオンラインでコミュニケーションをとりながらプロジェクトを進めるのは楽しい。仕事を終えて30度くらいの海に飛び込むと、さらにいいことに、いくつかのサンゴ礁に自由に潜ることができますが、それには追加料金がかかります。

長期の旅行が時間の無駄だとは思いません。旅先では多くの見識や機会を得ることができますが、物事は往々にして双方向に機能するわけではありません。

チャレンジが好きで、技術分野で自分を成長させ続ける必要がある人は、旅先でそのバランスを取るのに苦労するかもしれません。

もちろん、開発するプロジェクトの種類や、その実装で直面する技術的な問題にもよりますが、正直なところ、常に場所を変え、しばしば予測不可能なネットワーク状況に遭遇し、旅先で最大限の楽しみを****したいと望んでいる場合、何時間も分析、議論、複雑なプログラミングを必要とする困難で挑戦的な作業をするのは、単に煩わしいだけです。

旅行中は気を紛らわすものが多すぎるし、仕事が終わってから見るには誘惑が多すぎる。

これを自制心の問題、計画の立て方、準備の仕方の問題と考える人がいるのはよくわかりますが、私にとっては決してそうではありませんでした。

問題はそこではありません。問題は、それほど単純ではないプログラミング作業を含む中程度に複雑なプロジェクトになると、オフィスでできる仕事の多くが、出先では非常に困難であったり、完全に不可能であったりすることがわかったことです。

このような状況では、私は扱いやすいプロジェクトや、豊富な時間枠を持ち、少量の調査しか必要としないプロジェクトだけを選ぶことに制限されます。

それ以上のことがあるのは周知の事実です。自分よりも経験豊富で賢い人たちとチームを組んで仕事をすることは、開発には欠かせないことだと思いますし、フリーランスとして小さなプロジェクト、簡単なMVC/CRUDプログラミングの仕事をすることは、成長したり学んだりする多くの機会を逃していることと同じです。

でも誤解しないでほしいのですが、私は仕事が忙しく、毎日新しいことを学ぼうとし、プログラマーとしての様々な技術力を常に成長させています。しかし、この2ヶ月間、現実のプログラミングの問題、つまり会社で働いているときに毎日遭遇するような、一人では解決できないような問題に触れる機会が少ないと感じていました。そういった問題は会社の規模とは関係ありません。

オフィススペースの幻想に頼らない

今、私はリモートワークは可能であり、プログラマーがオフィス依存から脱却し、会社の経費を削減するための非常に効果的な方法であると確信しています。

しかし、現実はまったく違います。外出先で仕事をすると、決まった場所で仕事をしている感覚になります。もちろん、世界中にオフィスがある企業もありますが、簡単ではない仕事をこなすには、快適な場所、インターネット接続、静かな環境、そしてジムやヨガルーム、バーなどの設備がとても必要です。

今回の旅でもうひとつ明らかになったのは、よりクリエイティブな仕事には、ある程度のルーティンが必要だということです。週ごとに場所を変え、海辺で、ハンモックで、カフェで、バーで、ホテルのフロアで仕事をするのは、休暇を過ごすにはクールですが、難しいプログラミングの問題には明らかに役に立ちません。

これらの問題には様々な可能性と様々な次元があり、私は今、いくつかの解決策を考えました。

1) スキルや能力に応じたリモートワーク。3ヶ月ごとに技術的な方向性を変更。それぞれの場所でより多くの時間を過ごすこと。その土地の文化や生活のペースに浸り、良い家を借り、正式な机と椅子を用意し、3時間以上座っていられるようにし、日課にしましょう。お気に入りの場所に行き、場所を変えたくなったら、まずその場所をリサーチし、それからまた行きましょう。

2)事務職に就き、やりがいのある楽しい仕事をし、長期休暇を取り、年に2ヶ月ほど旅行に行くこと。

3) 一時的な収入を得ることができるワードプレスサイトや旅行サイト関連の仕事を積極的に行いましょう。

余談:

  • デジタルノマドという言葉は好きではありません。douchey(嫌な奴)という言葉の方が適切だと思います。
Read next