「できる」をあきらめる ー 不器用なフリーランスエンジニアの“やらない”生存戦略のトップ画像

「できる」をあきらめる ー 不器用なフリーランスエンジニアの“やらない”生存戦略

投稿日時:
堤 修一のアイコン

フリーランス

堤 修一

Xアカウントリンク

「もっと成果を出さなきゃ」「スキルを増やさなきゃ」。そんな焦りに押され、やることを積み重ねていないでしょうか?けれど、本当に働き方を変えるのは“足し算”ではなく、“引き算”かもしれません。この企画では、エンジニアたちがあえてやめたことと、その後に訪れた変化をたどります。ムダをそぎ落とした先に残る、本当に大切な仕事や自分らしい働き方とは。誰かの“やらない選択”が、あなたの次の一歩を軽くし、前向きに進むヒントになりますように。


堤(@shu223)と申します。プログラマー歴はかれこれ15年ほどになります。キャリアの大部分はフリーランスなのですが、案件はいつも直接お声がけをいただいており、ありがたいことにこれまで途切れることなく楽しく働けています。海外から依頼がくることもあり、ここ数ヶ月は売り上げの半分ぐらいは海外案件です。

・・・と書くとだいぶできるエンジニアを想像されるかもしれませんが、全然そんなことはありません。世の中にはiOS、 Android両方できる人、モバイルだけでなくサーバーサイドもできる人、デザインまでやれちゃう人、フルスタックな人も大勢いらっしゃる中、15年もやっていてiOSしかできません。そしてそのiOSの領域ですら、Swiftの進化にまったくついていけてませんし、設計論やアーキテクチャについて語ることもできないという不完全iOSエンジニアです。よくあるiOSエンジニア募集のJob Descriptionはほとんど満たしておらず、コーディングテストや技術面接を真正面から受けたらどこの会社でも通らない自信があります。

限られた時間と気力をその時々で一番やりたいことだけに投入するために、世のエンジニアに「できないとヤバい」とされていることですら、片っ端からスキップしてきたのです。まさに私のキャリアは、"やらないこと"でできていると言えます。

そんな私の「やらないことリスト」をいくつか紹介していきます。

やらないこと1:iOS以外をやらない

エンジニアは「できません」と言いたくない生き物です。私も例外ではなく、キャリアの初期はAndroidはもちろん、デザインも、 サーバーサイドも全部できるようになりたいと思っていました。サービスをまるっとひとりでつくれることに憧れがありました(し、今もあります)。

ただ現実としては、シンプルに、iOSだけで手一杯でした。不器用で飲み込みが決して早くない私は、iOSの新しい機能やまだ知らない領域を学び、実務を通じて経験を積み、発信をして…ということをやっているだけで精一杯で、他に手を広げる余裕がなかったのです。

結果として、iOSにフォーカスすることになりました。

そういうキャリアを「選んだ」というより、「こうするしかなかった」という成り行きに近いものでした。

ただ結果論ではありますが、この一点集中は私のキャリアにおいて大正解でした。iOSというひとつの界隈で発信をコツコツ続けることでそこでの認知を積み上げられましたし、「フリーランスiOSエンジニア」というシンプルな肩書きは、フリーランスでiOSができる人、ということでクライアントから見つけてもらいやすい。

そしてハードウェアや機械学習、海外の仕事など、新しい領域に興味を持った場合にも、iOSという強みと組み合わせることで、その領域では初学者でも仕事を獲得でき、飽きることなく新しいことをどんどん経験することができました。

ひとつの領域にフォーカスすることが良い循環とサステナビリティに繋がったのです。

やらないこと2:流行や必須技術を追わない

どんな分野でもそうだと思いますが、iOS界隈でも、これまで様々な流行がありました。RxSwiftのような新しいパラダイムを持ち込むもの、Clean ArchitectureやVIPERのようなアーキテクチャ/設計論、XcodeGenのようにチーム開発の課題を緩和するもの、テスト、CI/CD、etc...

ただ、私はこれらの多くをスルーしてきました。

誤解のないように言うと、興味がなかったわけでも、軽視していたわけでもありません。それぞれの技術が解決しようとする課題はいずれも間違いなく重要な観点ですし、絶対に学んでおいて損はないと思いますし、私がこれらを通らなかったことでその後苦労した/している部分も多々あります。

それでも追わなかったのは、単純に自分の時間と気力が足りなかったからです。

iOSのハードウェア連携/低レベルグラフィックスAPI/機械学習といった興味ある領域でのキャッチアップ、そういった技術を使える案件に入って日々手を動かすこと、そして学んだ知見や獲得した実績について発信すること。

――やりたいことを自分の優先度の高い順にやっていたら、巷の必須技術を追うタイミングがなく日々が過ぎていきました。

結果として、私はiOSエンジニアの募集要項に必須要件として書いてあることの多くを満たしていません。応募したとてiOSのシニアエンジニアとして採用されることは厳しいでしょう。

ただ、私としてはそれでいいのです。フリーランスをやめたいと思ったことは一度もなく[1]、考えてみれば、iOSエンジニアの採用試験に応募して就職したことは一度もありません[2](私はiOSをやっているエンジニアではありますが、iOSエンジニアではないのかもしれません)。流行や必須技術を追わなかったのは自分がやりたいことを優先した結果論ではありますが、募集要項を満たせなくても、私が私のエンジニアライフを楽しく送るにあたっては問題ない のです。

やらないこと3:英語を勉強しない

私は海外の会社でフルタイム正社員として働いたこともあります。また、今もフリーランスとして海外案件を受けており、毎週英語ミーティングがあります。

さぞ英語は話せるのだろうと思われるかもしれませんが、実は日常会話もままならないほど今でも英語は苦手で、ミーティングの英語なんて到底聞き取れません。自分の考えを話すこともうまくできません。せっかくリアルタイムに話す場があるのに、「また後でSlackでやりとりしよう」となるのは歯がゆいばかりです。

ただ、それでも私は、「英語を勉強しよう」とはなりませんでした。今でこそAIが進化してリアルタイム翻訳も現実的になってきましたが、私がアメリカで働いていた2016〜2018年ごろはまったく無理でしたし、それでも私は英語力にテコ入れしませんでした。

理由はやはり、技術の勉強や手を動かしてコードを書くことのほうが、私にとって優先順位が高かったからです。

もちろん「英語をやらなくて良い」なんてまったく、1ミリも思いません。絶対にできたほうが良かったです。ミーティングで会話できないことが良いわけはないのです。

ただ、私にとって、技術の勉強や手を動かす時間のほうがより重要だった、というだけです。

あのとき英語ができていればまた違った面白い人生が開けたかもしれません。それはわかりませんし、英語がもっと話せればなと今でも思いますが、今楽しくやれているのも確か[3]なので、結果論としては悪くなかったかなと思っています。

やらないこと4:海外に行っても観光しない

私は海外に行くのは好きで、たとえばカンファレンスなどで3日間行く用事ができたら、前後にも日程を追加してトータル10泊ぐらいの旅程にすることが多いです。

が、その旅程のほとんどは、宿やカフェで作業をしています。観光地や名所を積極的に回ることはほとんどありません。

遊ぶことが嫌いなわけでは全然ありません。ただ、私にとって、「今、ここでしかできないことをやろう」「今一番やりたいことをやろう」が、多くの場合に仕事になってしまうんです。

私にとって仕事は、毎日そこにある義務ではなく、やらされているものでもなく、仕方なくこなすものでもなく、 常に「やりたいから選んでいるもの」 です。

また「仕事はいつでもできる」とも考えていません。

第一子が誕生したとき、家庭の事情により私がメインで育児を行うことになりました。それまで好きなときに好きな場所で好きなだけ仕事ができていたのが、まず育児の都合があり、次点で仕事をしてもよい、という状況になりました。今では状況が変わりまた海外にも行けるようになりましたが、仕事に邁進できる時間は希少で有限なものだと感じるようになりました。

また、おもしろい仕事のおもしろいタイミング/フェーズというのがあります。たとえば、プロダクトや会社は長く続くものですが、ゼロイチのタイミングというのはその歴史においてほんの一瞬です。1年、いや1ヶ月でもタイミングが違うとそういった仕事というのは出会えなかったりします。

だから海外にいても、「今、ここで一番やりたいこと」が仕事になってしまうのです[4]

もちろん、観光や遊びも、現地で知り合った人や友人に誘われたりすれば全然行きます。これはシンプルに「今、ここで一番やりたいこと」の優先度として仕事を超えたというだけですね。

「一般論としての正しさ」より「どうありたいか」を優先する

ここまで、私がこれまでのキャリアの中で、「やらなかった」ことについて書いてきました。

iOS以外をやらなかったこと。 流行や必須技術をスルーしてきたこと。 海外で苦労しながらも英語に本格的なテコ入れをしなかったこと。 海外に行っても、観光も行かずに仕事をしていること。

あれこれ書きましたが、どれも結局は「一番優先度の高いことをやっていたら手が回らなかった」というだけの話です。

iOS以外もできたほうが間違いなく良いですし、必須技術は間違いなく身につけたほうが良いですし、英語はできて絶対に損はないですし、旅先で現地でしかできない体験をするのは素晴らしいことです。

ただ、それらを「やらなかった」私も、楽しく、幸せなエンジニア人生を送れていることも確かです。

私のこの話は決して再現性がある話だとも、皆が参考にすべき話だとも思いません。ただの生存者バイアスかもしれませんし、結局は運が良かっただけだなとも思います。ただ、こういうケースもあるよということで、どなたかの何かしらのヒントになると幸いです。

脚注
  1. フリーランスという、仕事 or プライベートじゃなく、自分の人生全部がまるっとひとつのサイクルになる感じの働き方が本当に好きだし、向いているとも思っています。

  2. エンジニアとしての15年のキャリアの中で3度就職していますが、一度目はそもそもiOSエンジニアとして採用されたわけではなくFlash枠で応募してサーバーサイドエンジニアとして採用され、色々あってiOSをやり始めた のでした。二度目は2016年にサンフランシスコの会社に声をかけてもらい入社したのですが、一般的な採用試験はなく、ファウンダー陣とスカイプしただけでした。三度目も声をかけてもらったのですが、iOSエンジニアではなく別の職務として入社したのでした。

  3. 当時働いていたサンフランシスコの会社のファウンダー陣にまた声をかけてもらって、彼らが新しく立ち上げた会社の仕事を今フリーランスとして手伝っています。このことで「英語はうまく話せないが、そこを補うのに十分な技術面での貢献はできていた」とは言えると思います。

  4. じゃあ家でもいいのでは?と思われるかもしれませんが、仕事をしていても、旅行先の非日常感というのは十分に感じられ、しっかり思い出に残るものです。