見出し画像

Rubyを愛する気持ちがここまで連れてきてくれた。STORES 4人目のRubyコミッター、今泉麻里(ima1zumi)さんインタビュー

STORES での開発だけでなく、社内外のカンファレンスへの登壇などにも力を注ぐ今泉麻里さん。そんな彼女が2025年の3月にRubyコミッターに就任したという嬉しいニュースが飛び込んできました。プログラミングに興味をもったきっかけから、Rubyとの出会いとコミッター就任の気持ち、そして STORES でどんな仕事をしているのかまで。幅広くお話を聞きました。

今泉 麻里さん・・・テクノロジー部門/プロダクト統合本部/統合Aグループ
新卒で金融系システム開発会社に入社しミドルウェアの保守開発に従事。その後株式会社永和システムマネジメントに入社しRuby on Railsを使ったアジャイル開発を行う。2024年 STORES 株式会社に入社。STORES 予約 や統合ホーム画面の開発を行っている。Xのアカウントは@ima1zumi

Minecraftがプログラミングに興味を持ったきっかけ

──まずは、これまでのことを教えてください。プログラミングに出会ったのはいつですか?

大学の講義ではプログラミングの講義を取っていたものの、C言語を紙に書くといった内容であまりプログラムを書いた感覚はありませんでした。

けれど、友達とMinecraftをやっている時に、素材を自動で作成する工場を作ることに熱中して自動化が好きなことに気づいた経験や、昔からパソコンを使うことが好きだから「プログラミングに向いていそうだな」と考えるようになりました。その後、新卒で金融系のSlerに就職し、実際に本格的にプログラミングを始めるようになりました。

──実際に仕事をしてみて、プログラミングは向いていたんでしょうか?

向いていました!仕事が始まってみるととても楽しくて。職場の環境自体は、プログラミングだけでなく業務の知識を深めることも求めるものでしたが、私はシステムの動く仕組みにとても興味があり、周りの先輩に質問してはさまざまなことを教えてもらいました。

──この時はどんなプログラミング言語を使っていたのですか?

主にCOBOLを使っていました。プログラミング言語の中でも歴史が古く、1959年にできたもので、今でも金融系など基幹系システムで使われています。この言語を扱いながら「ここをこう変えると、こう動く」という感覚を掴むことができました。

プログラミングスクールでRubyに出会い、そのオープンさに魅せられた

──その後、Rubyに出会ったのですよね。どのようなきっかけで?

フィヨルドブートキャンプというオンラインプログラミングスクールに入学したことです。現場で即戦力になることを目指すスクールで、Linuxの基礎の基礎から、Ruby on Railsを使って自分のアプリケーションを出すところまでをサポートするというカリキュラムでした。このカリキュラムの中でRuby on Railsを使うために学んだのが、私のRubyとの出会いです。

──Rubyに触れてみて、最初の印象はいかがでしたか?

それまでの仕事ではIBMのz/OSというメインフレームを使っていました。z/OSのようなOSは、製品なのでマニュアルが充実しており、エラーコードが出ればマニュアルを引いて解決することができます。一方で、そのマニュアルを読んでもわからなければIBMに聞くしかありません。Rubyなど、特にオープンソースのソフトウェアはさまざまな情報がオンライン上で公開されており、日本語のドキュメントもたくさん存在します。得られた知見を公開し、シェアする文化であることに驚きました。また、オープンソースであれば分からないことがあれば直接コードを読みにいけるという開かれたコードであることもワクワクしました。

学習を進めてRuby on Railsを使える会社に転職し、その後 STORES に入社しました。

── STORES に入社した一番の決め手は何でしたか?

それまでは受託開発を行なっていましたが、クライアントが本質的にやりたいことやそれを選んだ背景を知るのが難しく、その環境で開発することにもどかしさを感じていました。意思決定の背景をひとつ聞くにも、人を介さなければならないことが多く、情報を自分から手に入れられる状態で、納得した上で開発してみたいと考えるようになったのです。

 STORES はRuby関連のイベントのスポンサーなどを積極的に行なっているため、名前を知っていたのと、CTOの藤村さんからイベントでインタビューを受けたことがあった縁で転職を考えた時にひとつの選択肢に浮かび上がりました。

転職マッチングサービスを介してメッセージを送ってみたところ、経歴やプロフィールをよく見てくれたメッセージをいただき、嬉しく感じました。Rubyコミュニティからの縁や、自分の目指す方向とマッチしていたことが入社につながりました。

 STORES に入社し「開発したい機能がたくさんある!」という勢いがあることに驚き

── STORES に入社してみて、どんな印象を持ちましたか?

入社時にまず感じたことは、やりたいことがまだまだたくさんあって、勢いのある会社だなと感じました。みんなが前向きにどんどん挑戦していこうという勢いを感じ、「すごいな」とただただ驚きました。入社早々にテックカンファレンスの運営にも関わることができ、そのスピード感も印象に残っています。

入社してからは STORES 予約 の開発チームに配属されたのですが、“予約”というドメインがとても難しいなと感じたのも覚えています。時間という形のないものをうまく扱えるようにするのは難しいのだなという技術的な難易度の高さに好奇心をそそられました。

──開発環境などはいかがでしたか?

とても満足いくものでした。マシンスペックを選べるのですが、MacBook Proのスペックが必要なものよりも高く、余裕のあるマシンスペックで開発できるのが嬉しかったです。また、複数プロダクトを開発環境でスムーズに扱えるようにするための仕組みも用意されていて驚きました。

STORES では、“Just for Fun” の想いに共感しながら、一緒に働く仲間を募集しています!興味を持ってくれた方は、ぜひ 採用サイト をのぞいてみてください。

“全員出社”で成し遂げた統合オンボーディングプロジェクト

──その後、2025年に入ってからは統合オンボーディングプロジェクトで開発をされていたとか。どのような業務を行なっていたのですか?

2025年の1月から3月までの間、 STORES のプロダクト間で、スムーズにプロダクト遷移をするためのサービスを作るプロジェクトに参画していました。これまでは、プロダクト間のデータは連携されているものの、事業者さまはURLを打ち込むなどしてプロダクト間を遷移する必要がありました。このプロジェクトは STORES 全体の統合ホームや統合ナビから遷移できるようにするというもので、かなりタイトなスケジュールの開発でした。特に、「早く作って、早く事業者さまからのフィードバックを受けよう」というのは今まで体験したことのない勢いがありました。

チームメンバー全員が出社し、なんとかリリースにこぎつけたプロジェクトで、並行してRubyKaigiのキーノートの発表準備も行っていたため私にとって人生で最も頑張った時期でした。

──このプロジェクトでは、どんなところにやりがいを感じましたか?

やはり、エンジニア、デザイナー、PdMがすぐ近くにいて、コミュニケーションを取れることがとてもいいなと思いました。出社という選択もハードな状況を乗り切るためにはベストなものだったと思いますし、チーム一丸となってひとつの目標に向かって走るという“ドライブ感”を感じました。

2025年にRubyコミッターに就任。その経緯とRubyを愛する気持ち

──少し時期を遡って、ここからはRubyとの関わりについて教えてください。 STORES に入社する以前の2020年にRubyのIRBとRelineのコミッターに就任されていますね。コミッターとはどのようなことをする役割なのでしょうか?

コミッターとは、オープンソースのソースコードに変更を加える権限を持つ開発者です。Rubyにおいては、プログラミング言語そのものの改良・修正を担い、コミュニティから提案されたバグ修正や新機能のパッチやPull Requestをレビューし、マージする役割を担います。

IRBは、Interactive Rubyの略で、Rubyを対話的に実行することができるライブラリです。Relineは、IRBの文字を入力する部分の裏側で動いているRuby製の行入力ライブラリです。私はこの時IRBとRelineのコミッターになったので、これらのライブラリに変更を入れる権限を持っている人になったということです。

──Rubyを学び始めてから1年ほどというと、とても早いのではないでしょうか?

そうかもしれません。私の場合は、IRBをメンテナンスしていてRelineを作ったオリジナルの作者の方があまりアクティブでなくなったことから、コミッターとなってメンテナンスをしてみないかと声をかけていただき就任することになりました。

コミッターになる前からバグ修正のPull Requestを送ったり、Rubyコミュニティで実際に顔を合わせて信頼していただいてたのも声をかけてもらった理由になったのだと思います。

──そして、最近Rubyのコミッターになられたのだとか! この時のことを教えてください。

2025年の3月に、Ruby内部のUnicode®のバージョンアップをするPull Requestを出したことがきっかけで、Rubyの文字コードの基本部分を作ったメンバーの一人の、尊敬する成瀬ゆいさんに推薦いただき、Rubyコア開発者らの合意を経て、まつもとゆきひろさんに承認されコミッターになりました。

──コミッターに就任する時はどんなプロセスなのですか?

「この人をコミッターに推薦します」とRubyの開発管理をしているRedmineでまつもとゆきひろさんあてに推薦があり承認をいただきました。

──就任が決まった時のお気持ちは...?

それまで、「Unicodeのバージョンアップが完了したらコミッターになるかもね」と冗談めかして話したりしていましたが、本当になるとはあまり思っていませんでした。

STORES にいるRubyコミッターのmameさんが「あれ見てください、返事してください」とSlackで教えてくれたことで推薦を知り、「ああ、マジか」と心底驚きました。コミッターになるには、「既存コミッターが推薦する」「本人がコミッターを引き受ける意志を表明する」「まつもとゆきひろさんがが承認する」というプロセスが必要なため、mameさんが私の意思表示を促してくれたのです。

コミッター就任時の実際のやりとりの様子

──Rubyコミッターに就任されてからは、やはり緊張しながら変更を加える感覚がおありだったのでしょうか?

それに関しては、自分の得意な分野であればあまり緊張するということはないかもしれません。Rubyコミッターの中にもそれぞれ専門分野のようなものがあり、私は文字コード関係やRelineがそれにあたります。その範囲内であれば、自らの判断で変更を加えてもいいかなという感覚があります。反対に、範囲外のものは誰かに見てもらったりするようにしています。また、大きな機能追加や変更ではRubyの開発者会議の議題として持ち込んだり、まつもとゆきひろさんの判断を仰ぐこともあると思います。

──Rubyコミッターになって加えた変更の中で印象的なものはありますか。

自分が出したUnicode 15.1.0をアップデートするPull Requestをマージしたことです。また、その次のバージョンのUnicode 16.0.0に上げる時には、Unicodeにとても詳しいRubyコミッターの方とRubyKaigiの発表後に一緒に作業することができ、とても思い出深かったです。

RubyKaigi2025でコミッター就任挨拶をする今泉さん

Rubyコミッターとして、そして STORES のエンジニアとして。これからの展望は

──これから、Rubyコミッターとしてどのようなことに取り組んでいきたいですか。

Rubyコミッターは、燃え尽きないように細く長く、そして力強くやっていきたいですね。これまで取り組んできた私の得意分野である文字コードだけでなく、そのお隣の分野である、正規表現などの知識をさらに吸収して、改善に貢献できたらなと思っています。

── STORES で働くこととの両立が難しそうですよね。

そうですね。仕事が佳境に差し掛かったり、プライベートが忙しい時には入ったコミットをまとめてくれているブログ※1などを活用して常に情報をキャッチアップしていきたいなと思います。常に今Rubyがどうなっているのかを把握し続けて、やれるパワーがある時にいつでも作業ができるようにしておきたいと考えています。

── STORES の仕事では、どんなことを目指していますか。

ちょうど2025年6月から新しいチームに配属されることになりました。そこでは、 STORES のプロダクト同士が繋がったことで発生しているエラーや遷移の遅延などを解消し、開発をしやすくするプロジェクトに参画します。

事業者さまがエラーやレスポンスタイムの悪化などでやりたいことを妨げられないようにし、“安定して使える”サービスを目指していくつもりです。

※1: ruby trunk changes https://ruby-trunk-changes.hatenablog.com/

( 文:出川 光)

今泉さんのお気に入り:ST FLOWER
フレッシュな植物で作られたリースを購入しました。クリスマスの時期に購入しましたが、シンプルなデザインで季節を問わず楽しめるのが嬉しいです。今もデスクの横に飾っていて、日々癒やされています。

\ STORES では一緒にはたらく仲間を募集中です!/


いいなと思ったら応援しよう!