Vol.372堤修一氏(有名技術ブロガー)に聞く、「情報発信」からキャリアをデザインする方法【特集:エンジニア育成の本質】2015.06.29TwitterLINEFacebookHatena有名無名を問わず多くのエンジニアが日々、自身のブログやGitHubなどで情報発信を行っている。その内容は技術解説からエンジニアのキャリア、マネジメント論までさまざまだが、情報にアンテナを張るのと同様、発信することにもエンジニアが成長する上で大きな意義があることは間違いなさそうである。いえ、社会人としてのスタートラインに立ったばかりの若手エンジニアの中には、何についてどう書けばいいのか皆目分からないという人もいるのではないだろうか。その後』でも精力的に発信し続けているiOSエンジニアの堤修一氏に、駆け出しの新人エンジニアが情報発信する際の心得について聞いた。フリーランスのiOSエンジニアとして国内外で活躍する堤氏は、絶えず成長し続けるため、また自身のキャリアを形作るために、どのようなスタンスで情報発信に取り組んでいるのだろうか。堤修一(@shu223)国内外でのフリーランスiOSエンジニアとしての活動を経て、現在はサンフランシスコのFyusion社。ウェアラブルおもちゃ「Moff」、次世代車いす「WHILL」、ウェアラブルトランシーバー「BONX」などハードウェアと連携するiOSアプリを多く手がける。オープンソース活動も行っており、GitHubでの累計スター数は世界トップ50にランクイン。先輩のひと言がきっかけで始めた技術ブログ更新。大手企業からカヤックへと転職し、32歳でプログラマとしてのキャリアをスタートした堤氏。入社して1年ほどが経過したころ、半期に1度の目標設定の場で先輩エンジニアからもらったアドバイスが、今日まで続く技術ブログ更新のきっかけとなった。「プレイヤーとしてやっていきたいのなら、エンジニアコミュニティで影響力を持つぐらいにならないといけないと言われたんです。やりたいのはあくまで開発であって、影響力を持ちたいなんて思ったことはなかったんですが、そうでもしないと年齢のこともありいつまでも100%プレイヤーでいるのは難しい雰囲気がありました。オープンソースを公開することも助言されましたが、そんなの怖いし、したくもない。「ブログ更新なんて新卒向けの目標。簡単すぎるのでは?」という声も社内にはあった。自分としても記事の質に自信があったわけでもない。そこで堤氏は、圧倒的な「量」で勝負しようと考えた。「一つ一つの記事の質には自信がなかったので、あまり人には言わずに毎日黙々とブログを更新していました。記事は当初から技術的な内容のものを書いた。iOSのサンプルコードを恐る恐るGitHub上に上げ、いろいろと調べながら3時間かけて1記事を仕上げた。考えなしのただの素振りではバッティングは上達しない堤氏のGitHubページ。公開したサンプルコード集『iOS7-Sampler』、『iOS8-Sampler』は合わせて5000スター超と世界中から注目を集めているキャリアを重ね、今回のように情報発信について話す機会が増えてきた堤氏は以前、自身の経験にも照らし合わせて「とにかく書き続けることから始めよう」という趣旨のアドバイスを送っていた。今はそうした考えをやや改めているという。「僕の講演を聞いて書き始めたという人のブログを見てみたら、本当にただ毎日、内容のあまりない記事を書き続けているだけ、ということがあったんです。それでも書き慣れてくるとか多少のメリットはあるとは思うのですが、ずっと誰にも読まれないままだろうし、それだと楽しくなくて結局は続かないはず。野球にたとえるなら、どうすればもっとうまく打てるかを考えずにバットを振り続けているようなもの。筋力はついたとしても、それではバッティングが上達することはないでしょう」そういう視点であらためて自身のブログの黎明期を振り返れば、質より量とは言いつつも、一方では質を向上させるための試行錯誤は欠かさなかった。「書いた記事にブックマークが付いたら、記事がウケた理由を考えて次に活かしたし、サンプルコードをGitHubに上げるのに比べて、効率よく記事を作る方法を探ったり、スクリーンショットを貼るのが面倒くさくても、1枚貼るだけで読みやすさが段違いに向上するので貼るようになったり、流し読みしても内容が分かるように見出しを細かく分けるようになったりもしました」3カ月書き続けるという量の目標設定にしても、「インパクトのボーダーラインをいかに超えるか」を考えた末に導き出したものだった。「1カ月ぐらいは続ける人は続ける。2カ月続ければ少しはすごいかもしれないが、それでもインパクトは弱い。直近では、今回のWWDCの発表を受けて、watchOS-2-Samplerを公開するかどうかについては、かなり迷ったという。Samplerシリーズは、あまり知られていない新機能だったり、実装方法の情報が少なかったりするサンプルコードをたくさん網羅していたので世界中の開発者から歓迎されたと思っています。2でできるようになった新機能の多くは、iOSでは今までも普通にできたごく基本的なものばかり。2が正式リリースされる秋では意味がなくても、WWDCの開催週に公開するのであれば、それなりに価値があると判断したからだ。情報発信によって作り上げる自身のエンジニア像がキャリアを左右する長く情報発信を続けている堤氏だが、とはいえそのスタンスは、「エンジニアがスキルアップするための一番の方法は、実際に手を動かすことである」というものだ。成長したかったら、手を動かす時間を最大化するのが正しいと話す。「僕が喜びを感じるのは、あくまでアウトプットすることに対してです。新しい技術を学ばなきゃとは思っても、やはりその先にアプリなど何らかのアウトプット先が見えないとモチベーションが湧かない。現実には、アプリを1個作って世に送り出すのには大きな労力と時間を要する。ブログ記事はこうしたアウトプットの第一歩目として位置付けています。情報発信することには、その後の仕事につながるというメリットもある。堤氏は、今後自分がどのような仕事をしたいかを考えて、ブログで発信する内容を意識的にデザインしてきた。「2013年末にはハードウエアと連携するアプリを作ることに興味があり、当時はほとんど知識を持ち合わせていませんでしたが、都度調べつつ、BLEに関する記事を多く発信していました。堤氏のようなフリーランスのエンジニアにとっては、どういう実績を積むかが、周囲から見たその人のエンジニア像となり、その後のキャリアを左右する。ブログなどによる日々の情報発信に関しても同様である。「僕は自分のエンジニア像というものを、自社プロダクトのように捉えているかもしれません。上ばかり見て絶望する人は成長できない自分のエンジニアとしてのキャリアや生存戦略について講演した際に、「報われないかもしれない、と不安になったことはないか?」と質問されたことがあるという。その当時は自分の感覚と違いすぎて、言われていることの意味がとっさに理解できなかったという堤氏だが、時間を置いた今は、なぜそういう質問が生まれるのか、自分なりに解釈することができるようになった。「その質問をされた方の言う『報われないかもしれない』というのは、記事を書いてもバズらないかもしれないとか、アプリを出してもヒットしないかもしれないとか、プログラムを頑張って勉強してもすごいプログラマの人たちには追いつけないんじゃないかとか、そういうことをおっしゃっていたのだと思います。考えると、確かに辛いことが多いだろうと思いますね。僕自身は、有名になろうと思ってブログを書いてきたわけではないし、大ヒットアプリを作って世界を変えてやろうと思っているわけでもないし、スーパープログラマーになりたくてプログラムを始めたわけでもない。最初はシミュレータで文字を表示できただけで感動したし、初心者のころはどんなにありきたりで簡単なアプリでも自分の手でアプリを作っているというだけで楽しかった。自然とそう考えられる人が、成長できる人なのではないか。逆に上ばかりを見て絶望するような人は、その分野に向いていないのかもしれないと堤氏は続ける。「昔、ギターをやっていた時期がありました。うまくなって、格好良く演奏がしたいという動機はあったものの、その過程にある練習自体は楽しくなかった。それは、自分がギターに向いていなかったということだと思います。報われないかもしれないことが辛くて1歩が踏み出せないという若手エンジニアに向けて、堤氏は最後にアドバイスをくれた。「僕がすごいエンジニアだと思う人でも、話を聞いてみると意外に自信を持っていなかったりすることがあります。中にはスーパーな人もいるでしょうが、たいていはみな、頑張れば手の届くような人たちだったりするのです。他人の技術ブログを読むと、自分の知らないことがたくさん書いてあって、世の中にはすごい人ばかりだなぁ、と思うことがあるかもしれません。それは書き手自身もすごいことを知ったと思ったから書いているのであって、みんなで背伸びをしあっているようなもの。見るとみんながリア充に見えるのと同じです。転職サイトtypeは株式会社キャリアデザインセンターによって運営されています。