大学を中退する直前から今までどういった意思決定をし、どんな努力と経験を積み重ねてTwitter本社でのエンジニアのポジションを獲得したのでしょうか?経緯 (現地のビザの獲得についても含めて)を教えていただけますと幸いです。
「人生の明確な目標があってそのために意思決定と努力をしてきた」という感覚は実はあまりないんですよね。ただ現実を直視して自分をごまかさないようにする「癖」みたいなのがあって、それでなんとかやってこれた感じですね。人生の各所でビビってしまうできごとってあると思うんですね。例えば僕の場合は初めて参加した海外のカンファレンスで、飛び込みで5分間の発表をやってみたら?と知り合いに言われ、ここで尻込みしたらびびってる俺めっちゃカッコ悪いやん、めっちゃダサいやん、って思ったんですね。スポーツでも一緒で、僕は大学中退後スノーボードをしばらくやってたんですが、ビビってたら全然うまくならないんですよね。このジャンプでこけたら怪我しそうやなー、って思っても意識を集中して突っ込む度胸が必要なんですね。当然頭も使わないといけないですが、最初はやっぱり怪我しますよね。スノーボードを始めた年、キッカーで飛びすぎて左膝から雪の上に落ちて太ももの骨がぐしゃっと折れました。太ももから先がなくなったような感覚で、足がなくなるってこんな感じなのかなと思いましたね。
努力と経験の話でしたね。僕は本を読むのが好きで(読むのは遅いですが)、プログラマーになろうとした時も大量の本を買って片っ端から読みました。それでだいたい業界の雰囲気をつかみました。そのころちょうどみんなJavaがすごいと言ってて、C言語よりもJavaを勉強しないとなー、と思って勉強してました。その過程でオブジェクト指向についても調べてSmalltalkに行きつき、こんな面白いプログラミング環境があるねんなー、と感心したりしてました。ただSmalltalkもそこまで深いところまで勉強するには至らなかったです。わりとなんでも中途半端なままにしてしまうタイプです。その後Rubyに出会い、この言語は絶対に流行ると確信したので勉強を開始しました。ほどなくしてRailsが出てきて、そのあたりのタイミングでWebアプリ業界に転向しました。それまではJavaで金融系のシステムのUIとか作ってました。Rubyで仕事しながら暇な時にTwitterクライアントをRubyで実装したらなかなか面白いものができて、それに興味をもった人たちとGithub上でわいわいプログラミングするということをやり始めました。プログラマーとしてわりとスキルアップしましたね。Twitterクライアントを作るに際して必要なライブラリ(小さなもの)をいくつか本体から切り離して単体のライブラリとして公開したりしました。その後しばらく仕事関連でも趣味でも新しくライブラリを作っては公開してRubyFlowというところで宣伝してました。世の中には不便なままになっていることが無数にあるんですね。そういったことを解決するライブラリを作るのが当時は楽しかったです。そうしてRubyプログラマとして多少は知られるようになりました。件のカンファレンスでは自作のライブラリのひとつを紹介したんですが、大変反響がありました。次の年もそのカンファレンスに行ったんですが、ネット上でお互いに知ってたらしいとあるエンジニアに英語で声をかけられて「一緒にペアプロしようぜ」みたいに言われてパニクりました。当時はほんとうに英語はまるでダメでしたね。
そんなこんなでRubyプログラマとして適当に働いていたらある日Twitterの中の人からメールが来ていろいろあって面接受けたらなぜか通ってTwitterに入ることになりました。奇跡的な感じがしましたが、まあ彼らの基準に照らして僕は正しいやりかたで物事を考えることができるというふうにその面接で判断されたのでしょう。ごまかさずになるべく本質に近づこうとする「癖」が幸いしたのかもしれません。僕は考えるスピードはそれほど速くないのですが、気になりだすととことん考え続ける人間で、そうやって人生で長い時間をかけていろんなことについて自分なりの考えを積み上げるということをしてきたんですね。ていうかみなさんそういうことしないんですかね?しますよね?自分の頭を使って自分なりの世の中に対する理解をちょっとずつ積み上げていくと。でも知識を貯めるだけじゃだめで「理解」することが大事なんですよね。自分が今どうしてこういう境遇にいるのかも常々考えて理解しようと頑張ってます。
で、Twitterに入ってからがまた大変でしたね。別にそういう有名な会社に入ることがゴールなわけでは全然ないわけで、仕事ができなければすぐに首切られますしね。苦労はしましたが僕にできる仕事がわりとたくさんありましたね。そういう仕事をうまくあてがってくれるいい上司に恵まれたわけなんですが、その上司のためにわりと必死で仕事しました。一番最初のビデオチャットでは「君何言ってるかわからないから」と言われ、仕方なくテキストチャットで会話するしかありませんでした。その後こつこつと成果をあげていくことでだいぶ信頼してもらえるようになり、僕が昇進できるようにあれこれ動いてくたりもしました。レイオフされた時もすぐに連絡くれて(彼もレイオフされてた^^)、心配してくれてました。めっちゃいい人でしたね。いつか何らかの形で恩返しができるといいなと思っています。
ビザについては詳しくは調べていただくとして、僕の場合はTwitter本社にはLビザで行きました。大学を中退しているのでH1Bの条件を満たしていなくて当時はH1Bを取るのは無理でした。でレイオフされてLビザの効力がなくなるのでどうしようかと思っていたところ、Eビザをサポートしてくれる会社が見つかったので今はEビザです。今の会社は知り合いがつないでくれました。上にも書いた僕が初めて参加した海外のカンファレンスにその人も参加していて、僕の発表を見てくれてました。ジョブズのスピーチじゃないですが、いろんな点と点が繋がって今に至ってますね。
ここからはあまり参考にならないかもしれない僕個人の今までの人生の感想なんですが、僕は生きていく上で他人にアドバイスを求めたことがあまりないんですよね。「そんなん自分のことなんやし自分で考えたほうがまともな結論出せるんちゃうん?」って常に思ってるようなタイプで、他人に聞く前に誰よりも深く考えて結論を出すみたいな、そんなノリでやってきたんですね。だからあまり前例のない生き方に結果的になっていて、だからこそ貴重な経験なのかなと今となっては思いますが、いちいち他人に聞くのが面倒というのもありますね。こっちが気を使わないといけない感じがなんか面倒で。あとは人間を見てるとだいたい考えていることがわかるので、そうやって他人を観察することでいろんなことを聞かずに吸収したのかもしれないですね。あとは読書ですね。本はほんとにいいですね。反面教師みたいな事例もだいぶ役立ってますね。そもそも反面教師的な事例って相手に聞くことできないですよね。「なんでいつも失敗するんですか?」とか「なんでどうでもいいことでいつも怒るんですか?」とか直接聞けないですよね。そういうのはやっぱり脳みそをフル活用して全身でその相手の人間性や思考パターン、人生そのものを感じ取る以外にないんですよね。
こんな感じです!
努力と経験の話でしたね。僕は本を読むのが好きで(読むのは遅いですが)、プログラマーになろうとした時も大量の本を買って片っ端から読みました。それでだいたい業界の雰囲気をつかみました。そのころちょうどみんなJavaがすごいと言ってて、C言語よりもJavaを勉強しないとなー、と思って勉強してました。その過程でオブジェクト指向についても調べてSmalltalkに行きつき、こんな面白いプログラミング環境があるねんなー、と感心したりしてました。ただSmalltalkもそこまで深いところまで勉強するには至らなかったです。わりとなんでも中途半端なままにしてしまうタイプです。その後Rubyに出会い、この言語は絶対に流行ると確信したので勉強を開始しました。ほどなくしてRailsが出てきて、そのあたりのタイミングでWebアプリ業界に転向しました。それまではJavaで金融系のシステムのUIとか作ってました。Rubyで仕事しながら暇な時にTwitterクライアントをRubyで実装したらなかなか面白いものができて、それに興味をもった人たちとGithub上でわいわいプログラミングするということをやり始めました。プログラマーとしてわりとスキルアップしましたね。Twitterクライアントを作るに際して必要なライブラリ(小さなもの)をいくつか本体から切り離して単体のライブラリとして公開したりしました。その後しばらく仕事関連でも趣味でも新しくライブラリを作っては公開してRubyFlowというところで宣伝してました。世の中には不便なままになっていることが無数にあるんですね。そういったことを解決するライブラリを作るのが当時は楽しかったです。そうしてRubyプログラマとして多少は知られるようになりました。件のカンファレンスでは自作のライブラリのひとつを紹介したんですが、大変反響がありました。次の年もそのカンファレンスに行ったんですが、ネット上でお互いに知ってたらしいとあるエンジニアに英語で声をかけられて「一緒にペアプロしようぜ」みたいに言われてパニクりました。当時はほんとうに英語はまるでダメでしたね。
そんなこんなでRubyプログラマとして適当に働いていたらある日Twitterの中の人からメールが来ていろいろあって面接受けたらなぜか通ってTwitterに入ることになりました。奇跡的な感じがしましたが、まあ彼らの基準に照らして僕は正しいやりかたで物事を考えることができるというふうにその面接で判断されたのでしょう。ごまかさずになるべく本質に近づこうとする「癖」が幸いしたのかもしれません。僕は考えるスピードはそれほど速くないのですが、気になりだすととことん考え続ける人間で、そうやって人生で長い時間をかけていろんなことについて自分なりの考えを積み上げるということをしてきたんですね。ていうかみなさんそういうことしないんですかね?しますよね?自分の頭を使って自分なりの世の中に対する理解をちょっとずつ積み上げていくと。でも知識を貯めるだけじゃだめで「理解」することが大事なんですよね。自分が今どうしてこういう境遇にいるのかも常々考えて理解しようと頑張ってます。
で、Twitterに入ってからがまた大変でしたね。別にそういう有名な会社に入ることがゴールなわけでは全然ないわけで、仕事ができなければすぐに首切られますしね。苦労はしましたが僕にできる仕事がわりとたくさんありましたね。そういう仕事をうまくあてがってくれるいい上司に恵まれたわけなんですが、その上司のためにわりと必死で仕事しました。一番最初のビデオチャットでは「君何言ってるかわからないから」と言われ、仕方なくテキストチャットで会話するしかありませんでした。その後こつこつと成果をあげていくことでだいぶ信頼してもらえるようになり、僕が昇進できるようにあれこれ動いてくたりもしました。レイオフされた時もすぐに連絡くれて(彼もレイオフされてた^^)、心配してくれてました。めっちゃいい人でしたね。いつか何らかの形で恩返しができるといいなと思っています。
ビザについては詳しくは調べていただくとして、僕の場合はTwitter本社にはLビザで行きました。大学を中退しているのでH1Bの条件を満たしていなくて当時はH1Bを取るのは無理でした。でレイオフされてLビザの効力がなくなるのでどうしようかと思っていたところ、Eビザをサポートしてくれる会社が見つかったので今はEビザです。今の会社は知り合いがつないでくれました。上にも書いた僕が初めて参加した海外のカンファレンスにその人も参加していて、僕の発表を見てくれてました。ジョブズのスピーチじゃないですが、いろんな点と点が繋がって今に至ってますね。
ここからはあまり参考にならないかもしれない僕個人の今までの人生の感想なんですが、僕は生きていく上で他人にアドバイスを求めたことがあまりないんですよね。「そんなん自分のことなんやし自分で考えたほうがまともな結論出せるんちゃうん?」って常に思ってるようなタイプで、他人に聞く前に誰よりも深く考えて結論を出すみたいな、そんなノリでやってきたんですね。だからあまり前例のない生き方に結果的になっていて、だからこそ貴重な経験なのかなと今となっては思いますが、いちいち他人に聞くのが面倒というのもありますね。こっちが気を使わないといけない感じがなんか面倒で。あとは人間を見てるとだいたい考えていることがわかるので、そうやって他人を観察することでいろんなことを聞かずに吸収したのかもしれないですね。あとは読書ですね。本はほんとにいいですね。反面教師みたいな事例もだいぶ役立ってますね。そもそも反面教師的な事例って相手に聞くことできないですよね。「なんでいつも失敗するんですか?」とか「なんでどうでもいいことでいつも怒るんですか?」とか直接聞けないですよね。そういうのはやっぱり脳みそをフル活用して全身でその相手の人間性や思考パターン、人生そのものを感じ取る以外にないんですよね。
こんな感じです!
Liked by:
Lizan Zhou
hayatoshibahara
橋本病