GitHubでオープンソースプロジェクトの支援を行なっているカトリーナさん。じつは、彼女がプログラミングを学び始めたのは27歳。今やエンジニアたちを支援する立場である彼女だが、かつては役者を目指して演劇学校へ通っていた。彼女がGitHubで働くほど優秀なエンジニアになれた理由とは?
世界中にユーザーを抱え、幾つものオープンソースプロジェクトを支えている「GitHub」。そんなGitHubには「Open Source Advocate」という職種が存在する。それを担っているのがカトリーナ・オーウェン(Katrina Owen)さんだ。
Open Source Advocateとはオープンソースプロジェクトを支援し、オープンソースコミュニティを拡大させる役割だ。たとえば、ブログやPodcast、学会など様々なチャネルを介したコンテンツ配信。さらには国内外のカンファレンスや交流会などのコミュニティへの参加など、その活動は多岐にわたる。
カトリーナさんがユニークなのは、GitHubでの仕事と並行して個人活動(※)にもチカラを入れていること。Go言語やRuby言語に関する講演活動や、オブジェクト指向プログラミングに関する書籍の共著などを通じ、多くのエンジニアから支持される存在だ。
そんな彼女だが、驚くべきことにプログラミングを学び始めたのは27歳の頃だった。幼い頃からプログラミングを学び始める人も増えていることを考えると、スタートが遅いように見受けられる。しかし、カトリーナさんは「遅かった」とは思わないという。
私たちは無意識に「手遅れ」だと言い訳にしているのかもしれない。挑戦において「手遅れ」など存在しないことをカトリーナさんは教えてくれた。
(※)カトリーナさんはExercismの開発/運営者でもある。Exercismとは、演習問題を解きながらプログラミングスキルを向上させることができるオンライン学習サービス。より良いコードを書く方法を他ユーザーと議論することができるコミュニティの要素も併せ持っている。2013年6月にサービスをスタートし、世界201ヶ国で利用されている。(2016年11月時点)それぞれの言語にメンターがついていて、レッスンをより面白く、より価値あるものにしてくれる。
― 27歳でプログラミングを学びはじめたとのことですが、それ以前は何をされていたのでしょうか?
高校を卒業した後、2年間、パリにある演劇の学校に通っていました。その後はバスツアーのアテンダント、受付係、秘書、ウェイトレス、小さな劇俳優など、幾つものパートタイムの仕事を転々としていたんです。
で、25歳のときに大学に入りたいと思ったのですが、入学に必要な数学や物理、化学などの知識が全くない状態で(笑)。そのため故郷のノルウェーの病院で医療転写の仕事をしながら、大学入学に必要な知識を独学したんです。それから1年半後、27歳のときに無事に大学生になることができました。プログラミングをはじめました。
大学における微分積分の授業があって、ここがプログラミングとの出会い。問題に対する解法を考え、解を導くためのプロセスを自動化するという課題がでたんです。プログラミングはすごくエキサイティングで、単調でつまらない作業から私を解放してくれた。この体験はとても爽快でしたね。
その後も、プログラミングをきっかけにして、大学生活のほとんどの時間、情報、物理、数学を専攻していた仲間と過ごしていました。彼らは、機械いじりやはんだ付けをしたり、自分たちでLinux大会を主催したり、すごくアクティブなんです。彼らと過ごすうちに、パズルのような「解き方はわからないけど、きっと解けるはずだ」というプログラミングの面白さにどんどんのめり込んでいったのです。
― 子供の頃からプログラミングをはじめる人もいる中で、比較的遅いスタートだったんですね。どのようにスキルアップしていったのでしょうか?
本を見ながら簡単なスクリプトを書いてみたり、そんなレベルでした。そこから、JavaRanchというウェブ上のフォーラムに参加したことで、世界が広がっていきましたね。
JavaRanchはボランティアが運営する無料のプログラミング講座なのですが、生徒は簡単なプログラミング問題に取り組み、常駐している2人のボランティアがフィードバックをくれる。これが大きな支えになりました。
― 途中で挫折しそうになることはありませんでしたか?
もちろん、なんども壁にぶつかりました。学びはじめた当初、プログラミングの本を読む時は、いつも不安な気持ちでいっぱい。何が書かれているのか、理解できないことばかりで、ずっともがいていました。そんな時に拠りどころとなったのは「問題解決に取り組みたい」という思いでした。
そこからはチャレンジと実践あるのみです。ある時、友人から「PHPで書かれたサービスが、思うように動かないから見てみてほしいと依頼をされたときも「やれるだけのことを、とにかくやってみる」という姿勢でトライして。幾つかの小さなプロジェクトに取り組むことで、スキルが向上していったように思います。
また、スキルアップにスリーランスの経験も活きました。大学を卒業してからも、フリーランスのエンジニアとして生計を立てていた時期があって。幾つかのスタートアップでも働いたり。カリフォルニア州サンタモニカを拠点とする「Splice」という音楽共同制作サービスのスタートアップにいたこともありました。
― オープンソースコミュニティに参加するメリットについて改めて教えてください。
もちろん、技術的な側面で知識が深まるなどメリットはたくさんあります。でも、それだけではありません。自分が何者であるのかというアイデンティティを確立することにつながると考えています。私自身、世界中に大勢いるエンジニアの1人としてコミュニティに貢献していけるんだということ、コミュニティに対する尊敬、そのすばらしさなど、そのコミュニティの偉大さを、オープンソースを扱うようになってはじめて実感したのです。
オープンソースに携わっていると、自分の活動が人の目に触れることにもなりますよね。それを見た人から声をかけられ、新たな仕事へとつながっていくケースもあります。そこで求められていることや自分が発揮できることが徐々に明確になっていきます。
じつは私自身、とても内向的な性格なのではじめはとても苦労しました(笑)ただ、外に出向いて人と出会うことが、より多くの機会を生み出してきました。そういった積み重ねがあって、オファーを受け、GitHubで働くことになって。対外的な活動がなければ、こういった人生の選択は無かったはずです。
― GitHubからどういった点を評価されてのオファーだったと思いますか?
カンファレンスでの講演とExercismの取り組みが評価されたのだと思います。ただ、成し遂げた事の名前が重要なのではありません。GitHubは、経歴ではなくその人が持つスキルやもたらす価値を重視する。その経歴を通して何を得たかが重要なのです。
私はオープンソースの活動や講演を行なうようになって本当に多くのエンジニアと出会うようになり、幅広いネットワークを持つようになりました。
Exercismというオープンソースであり、多くのコントリビューターによって成り立つプロダクトを成長させるという経験ができた。ここに至るまで、本当にいろんな苦労があり、決してうまくいくことばかりではありませんでした。ただ、それらがあったからこそ、GitHubのOpen Source Advocateというポジションで求められていた価値を発揮できたようになっていったのだと思います。
オープンソースコミュニティには、開かれた機会があり、誰もがチャレンジできる。ぜひこのことをたくさんの人に知ってほしいですね。
(おわり)
文 = 大塚康平
4月から新社会人となるみなさんに、仕事にとって大切なこと、役立つ体験談などをお届けします。どんなに活躍している人もはじめはみんな新人。新たなスタートラインに立つ時、壁にぶつかったとき、ぜひこれらの記事を参考にしてみてください!
経営者たちの「現在に至るまでの困難=ハードシングス」をテーマにした連載特集。HARD THINGS STORY(リーダーたちの迷いと決断)と題し、経営者たちが経験したさまざまな壁、困難、そして試練に迫ります。
Notionナシでは生きられない!そんなNotionを愛する人々、チームのケースをお届け。