「AJ出張版」は、株式会社アカリクが発行する「大学院生・研究者のためのキャリアマガジン Acaric Journal」の過去の掲載記事や、WEB限定の新鮮な記事をお送りするカテゴリです。今回はvol.5の掲載記事をお届けします。
アカリクのサービスとして毎年1万5千人以上が新規登録しているCloud LaTeX。その開発プロジェクトは大学院生エンジニアメンバーによって構成され、メンバーの多くは就職後も引き続き開発に携わっています。 今回は、ユーザからの意見や要望をもとにサービスの発展に力を注ぐ現役開発メンバーの西澤氏と鈴木氏に話を伺いました。
Cloud LaTeXチームは、現在開発メンバーを募集しています。詳細は以下のページからご確認をお願いいたします。
Cloud LaTeX開発メンバージョインまでの経歴
― お2人のご経歴を教えてください
西澤氏:2016年にCloud LaTeX開発メンバーにジョインしました。東京大学でロボコンサークルに参加していたのですが、そのつながりでCloud LaTeX開発プロジェクトの存在を知り、その頃から関わっています。現在はAI系のベンチャー企業で、開発やエンジニアリングマネージャーを担当しながら、副業としてCloud LaTeXに携わっています。
本業では、プログラミング教材を開発する業務などに関わりながら、サーバー、インフラ、アプリ開発などを広く行っています。Cloud LaTeXでは、これまでに過去バージョンの復元機能やフロントエンド側のスペルチェック機能、Dropboxの同期機能など、サーバーサイド・フロントエンドにまたがって幅広く担当させて頂きました。
鈴木氏:2018年にCloud LaTeX開発メンバーにジョインしました。情報系の修士を修了後、新卒入社したWeb系企業でデータ分析系の仕事を経て、現在はサーバーサイドの開発に従事しています。本業とは別に技術書の執筆も行っています。
もともと学部時代にCloud LaTeXを利用しており、修士時代にアルバイト先を探していた際、アカリクがCloud LaTeX開発メンバーを募集していたのを見つけたので応募しました。
Cloud LaTeXでは、サーバーサイドやフロントエンドの開発を中心に行っています。
また、ユーザーからの問い合わせについて技術的な観点からサポートを行ったり、本業で得た知見を活かして分析に必要な集計クエリを作成したりもしています。
Cloud LaTeX開発経験が本業にも活かされる
ー Cloud LaTeX開発のご経験が、本業の方で活かされることはありますか
西澤氏:クラウドを使った開発やWebサービスに関する知識が活きています。Rubyについては、プロジェクトに参加した当初は大学の授業で触った程度だったのですが、今では問題なく開発できています。
また、エンジニアは突然新しい機能を実装しなくてはならないケースがよくありますが、そのようなときもCloud LaTeXでの開発経験が役に立っていますし、 新サービスを立ち上げる際もCloud LaTeXの構成を参考にすることがあります。
学生のアルバイトではなかなか触らせてもらえないようなところもやらせてもらえますし、とにかくどんどん開発して成長していきたい方には良い環境だと思います。
鈴木氏:昨年、データ分析系の部署から開発系の部署に異動しました。畑違いの分野ですがCloud LaTeXでの経験から、自社サービスの開発がどのようなものかおおよそ把握できていたので、不安なく異動できましたし、イメージと実態もそれほど違いませんでした。
また、今はデータサイエンスが流行っていますが、学生がデータ分析をやろうと思っても、なかなか実データに触れるようなことは難しいです。
Cloud LaTeX では実データに対する集計クエリを書くことで、Webサービスの運用者がどういう情報を求めているのかということを知ることができます。このような機会はなかなかないと思います。
西澤氏: 特定のプログラミング言語の経験やAWSのインフラ、リリースのフローなども参考になっています。集団での開発フローは、ロボコンサークルなどでも行っていましたが、Cloud LaTeXほど本格的には行っていませんでした。
こういった仕組みはおそらく先代のCloud LaTeX開発メンバーが作ってくれたのだと思うのですが、そこから学べたことは大きく、今の業務にもそのまま役に立っています。
鈴木氏:就職する前の段階で実務経験があるエンジニアは周囲にもあまりいなかったので、実務的な知見を身に付けられる希少な場ですね。
また、Slackにエゴサーチが流れてくるチャンネルがあることには驚きました。学部時代にSIerの開発案件に携わったことがあるのですが、SIerの案件は納品したら終わりで、その先どう使われるかは全く分かりません。
一方Cloud LaTeXでは、自分が実装した機能がリリースされた後のユーザの反応が見えるので、実際使われているんだなという実感が得られるのが面白いです。
西澤氏:確かにユーザの反応や運用の裏側が見れるのは純粋に面白いですね。年末のユーザが逼迫する時期にはあまりリリースはしないように取り組んだり、裏側でサポートするための管理者ツールなどを含めた運用方法なども勉強になりました。
LaTeX開発サイドへの貢献
ー 大変だったことはありますか
西澤氏: メンバー全員が遠隔で作業をしているので、細かい実装の話などをチャットで交わす必要があります。楽ではありますが、時間がかかってしまうこともありました。
インフラなどの1人で触るには怖いようなものは、音声ミーティングをつないで相談しながら作業していましたが、それでも1人でやらなくてはいけない場合があって大変でした。しかし、そのおかげで自分で調べて作業する癖がついたと思います。何度かトラブル対応も経験しましたが、チャットベースで解決できたので慣れてしまえば大丈夫だと思います。
鈴木氏:昨年、京大で開催されたKUDH Basics: LaTeXワークショップのCloud LaTeXの使い方を紹介するパートで、講師の1人として登壇しました。 普通にエンジニアをやっているだけでは経験できないような事なので面白かったです。
それから、LaTeXはオープンソースですので、無償でその維持に取り組まれている方々がいらっしゃいます。その方々の貢献に乗っかるかたちでCloud LaTeXを作っています。そのようなLaTeXの最前線にいる方々に貢献できるよう、TeXLiveの開発版をCloud LaTeXで使えるようにすることで、開発者が開発中のバージョンに対するフィードバックを得やすくなるような仕組みを作りました。
どのくらい貢献できたかは分かりませんが、このようなスタンスにあることは開発者コミュニティの方々に喜んでもらえました。 これはCloud LaTeXならではの、LaTeX開発サイドへの貢献だと思っています。
西澤氏:LaTeXの開発コミュニティと距離を近くして連携をとったり、テンプレートを作っている方とコミュニケーションをとることは、他ではできないことなので、貴重だと思います。
とにかくLaTeXを学生に使ってもらえれば良いというわけではなく、LaTeXコミュニティの最新動向を踏まえつつ潤滑油として貢献していくことを心掛けています。
Cloud LaTeXの今後の展望
ー Cloud LaTeXの今後の展望を教えてください
西澤氏:シェア機能を追加したいという話は以前からあり、メンバー間で検討しています。また、Dockerのようなコンテナ技術を駆使して、手元のノートパソコンではできないような速さでコンパイルができるようになれば良いと思っています。
Webサービスであることを生かして、ローカルのコンパイルではできないような使い方を実現するために、いろいろなことを提案していきたいです。
鈴木氏:やや抽象的ですが、大学の研究室や講義などでLaTeXを使い始める際に、教員や先輩が勧めるサービスにしていきたいです。
「とりあえずCloud LaTeXを勧めておけば良いだろう」といった立ち位置に立てたら良いと思います。
機能面では、研究室で使うことを想定すると、グループでプロジェクトを共有できたりすると、導入してくれるユーザーが増えるのではないかと考えています。
ー Cloud LaTeX開発プロジェクトのアピールポイントを教えてください
西澤氏:自分で提案して機能を作りたい人にとっては良い環境で、チームの希望を叶えつつも、仕様にオリジナリティを入れることができます。好奇心旺盛で、自分で調べて進めていける方にはおすすめの環境ですね。
個人的には、フルリモートでの働き方が好きです。特に地方在住の場合、首都圏などと比べて周りに開発を学べる場所が少ないと思うのですが、そのような方々でも参加できるので、まだ実績が無くて悩んでいる方にもおすすめできます。
鈴木氏:私はまさに地方在住の大学生で、開発を経験できる場が少なかったのでCloud LaTeX開発プロジェクトはありがたい環境でした。
また、「LaTeXが好きで貢献したいけど、開発はハードルが高い」という方には良いポジションだと思います。分からないことは、メンバーがアドバイスしてくれるので最初からスキルセットがなくても心配する必要はありません。
プロジェクトの初期の頃に比べると、ある程度タスクが決められていてアサインして頂くような落ち着いたプロジェクトになってきていますので、そういった雰囲気を崩せるような気概がある方が来てくれると面白いと思います。
Cloud LaTeXチームは、現在開発メンバーを募集しています。詳細は以下のページからご確認をお願いいたします。
プロフィール(取材当時)
西澤 勇輝 様
AI系ベンチャー企業エンジニアリングマネージャー。2016年よりCloud LaTeXプロジェクトに参加。東京大学大学院情報理工学系研究科電子情報学専攻修士課程修了。
鈴木 雅也 様
Web系企業にてデータ分析やデータ分析基盤の構築・運用を経てサーバーサイドの開発に従事。
2018年よりCloud LaTeXプロジェクトに参加。茨城大学大学院理工学研究科情報工学専攻博士前期課程修了。著書に『数式をプログラムするってつまりこういうこと』『データサイエンス100本ノック構造化データ加工編ガイドブック』。