こんにちは、Ruby開発のマスコットキャラのおるびーです!
今回は、仙台オフィスで活躍してるエンジニアのご紹介です。
- 2023年4月に入社されて、もうすぐ丸2年が経ちますね
Ruby開発に入社を決めた一番の理由は何でしたか?
Ruby開発に入社を決めた一番の理由は、東北地方でWebアプリの開発に携われる環境があったことです。
当時在籍していた学校には東北地方でWebアプリ開発ができる求人がほとんど無かったため、自分で企業を探していたところRuby開発を見つけました。
RubyがWebアプリ開発でよく使われる言語であることは知っていたので、「Ruby開発という社名からWebアプリ開発に関わる機会がありそうだ」という第一印象を持ちました。
さらに、仙台オフィスがあったことが決め手になりました。
MISSIONとして「地域社会の未来を拓く」を掲げ、当時、大分県の姫島村にオフィスを構えている点や、地域未来牽引企業に認定されていることなど、地域社会へ積極的に取り組んでいる姿勢にも強く惹かれました。これらが後押しとなり、Ruby開発への入社を決めました。
- 仙台オフィスに所属されていますが、仙台で働くことの魅力やオフィスの雰囲気はどうですか?
仙台は都会すぎず田舎すぎず、生活のしやすさと便利さのバランスがすごく良いです。移動もしやすいし、お店も多くて、生活面のストレスが少ないと感じています。
オフィスは落ち着いた雰囲気で、少人数だからこそ相談がしやすく、わからないことがあってもすぐ聞ける距離感があります。集中したい時も作業に向いた静かさがあって、自分に合っている環境です。
- 入社後の研修ではWeb開発のトレーニングを受けたと思いますが、特に印象に残っていることや、大変だったことはありましたか?
わからないところを整理するのがとても大変だった思い出があります。最初の頃はWeb開発特有の用語や前提知識が足りず、ドキュメントを読んでも理解が追いつかないことが多くありました。
毎日のミーティングでメンターに進捗を共有していましたが、同じ研修を受けている他のメンバーの進み具合を聞いて焦ってしまい、理解が不十分なまま手を動かしてしまうこともありました。その結果、途中で頭がパンクしてしまうことも何度もありました。振り返ると「まず自分の中で状況を整理すること」の大切さを痛感しました。
さらに、当時は分からない点を自分でもうまく整理できていなかったため、質問も上手にできなかったと思います。それでも、毎日のミーティングや日報でわからないなりにアウトプットすると、社内の方が反応して丁寧に教えてくださったので、とてもありがたかったです。
この経験を通して、理解できていない部分をそのままにしないこと、アウトプットして助けを借りることの大切さを身をもって学びました。
- 現在はどんなプロジェクトの開発をしていますか?
現在は、ジムやスタジオ運営を一元管理できるウェルネス特化の予約/会員管理システムのフロントエンドのバージョンアッププロジェクトに参加しています。具体的には、フレームワークやライブラリのバージョンを引き上げても正しく動作するよう、数百個に及ぶファイルをAIも活用しながら段階的に書き換えています。
既存の大規模なコードベースに対して、影響範囲を確認しながら着実に更新していく必要があるため、リファクタリングや動作確認が日々の主な業務です。
- 忙しい業務の合間に、新しい技術や知識をキャッチアップするために、今でも行っている勉強法やコツがあれば教えてください。
これといって特別な勉強法があるわけではないのですが、日頃からGoogle Discoverを活用して情報収集をしています。Googleでさまざまな調べ物をしていると、その内容に関連した記事がDiscoverに表示されるため、自然とQiitaやZennなどの技術系コンテンツに触れる機会が増えます。
気になった記事はブックマークしておき、空いた時間に少しずつ読む程度のゆるい運用ですが、無理なく継続できるインプット源として役立っています。
また、社内の LT 大会や勉強会、社員の Slack Times チャンネルなども同様にブックマークしておき、後から見返すことがあります。こうした取り組みや発信に触れることで、新しい技術や考え方に出会うきっかけになっていると感じています。
- 最近、最も大きな達成感を得られた業務やタスクは何でしたか?
数百個のファイルを段階的にリファクタリングする業務に取り組んでいるのですが、その1段階目が無事に完了した瞬間は大きな達成感がありました。
私を含めた3名のメンバーで半年かけて進めてきたタスクで、書き換え方法に改善の余地が見つかった際にはインシデントも発生し、チーム全体でフォローやプロセス見直しを行う場面もありました。
困難な局面もありましたが、課題を共有しながら一丸となって取り組むプロセスを経て無事に完遂できたことで、チームとしての結束力や自分自身の成長も感じるきっかけになりました。振り返ってみると、成果そのものだけでなく、メンバーと協力しながら改善を重ねて進んだプロセス自体が何より印象に残っています。
- 業務で詰まったときや、技術的にわからないことがあったとき、どのようにしてその問題を解決しているんですか?
少し詰まっている程度であれば、まずはAIと壁打ちしながら自分なりに方針を整理し、レビュー時に該当箇所へコメントを残してレビュアーに重点的に見てもらうようにしています。自分だけで抱え込みすぎず、早い段階でフィードバックを得ることで、手戻りや認識ズレを減らす狙いがあります。
一方で、どう進めても前に進まないと感じた場合は、毎日行われているミーティングで議題として取り上げたり、チャットや突発的なミーティングを設定して、適切な相手に早めに相談するようにしています。特に影響範囲が広いタスクや判断が難しい技術的テーマについては、「誰に聞くのが一番早いか」を意識して動くようにしています。
また、相談して解決した内容はドキュメント化したり同じタスクに取り組んでいるメンバーにも共有して、次に同じ壁に当たったときにチーム全体で再利用できるようにすることも心がけています。結果として、個人としての解決スピードだけでなく、チーム全体の知見が蓄積され、同じ問題が起きにくくなる点にもつながっていると感じています。
- 完全リモートワーク、フレックスタイム制という柔軟な働き方 は、入社してみてどう感じていますか?
リモートワークのおかげで電車通勤が必要なくなり、さらにフレックスタイム制によって出退勤時間をある程度柔軟に決められるため、ワークライフバランスがとても整えやすいと感じています。
最近、私は起きたら散歩と筋トレをしてから朝食という朝のルーティンが定着してきました。通勤があるとどうしてもこの流れが崩れたり、時間に追われてしまうことが多いのですが、リモートワークとフレックスのおかげで自分に合ったリズムで一日を始められるようになりました。結果として、仕事にもより集中しやすくなっていると感じています。
- 社内にはRubyコミッターやコントリビューターがメンターとして在籍していますが、彼らが身近にいることで、若手エンジニアとしてどのようなメリットを感じていますか?
Ruby開発ならではの話になりますが、コミッターが作成したスキルアップカリキュラムを受講できることだと思います。このカリキュラムには「明確な正解」が用意されているわけではなく、自分なりに設計や実装を行い、その内容に対してコミッターからレビューをもらう、そして再度、自分で方針を考えて修正していく、というサイクルで進んでいきます。そのため、非常に実践的な学びが得られます。
特に、設計や実装の際にどのように思考するのか、あるいは「自分ならこう実装する」という具体的な示し方など、コミッターが普段どのように開発を進めているかという“思考プロセス”に触れられる点はとても貴重でした。単なる技術レビューに留まらず、開発のコツや判断ポイントまで学べたことは大きな財産になっています。
私は実際のプロジェクトに参加して少し経験を積んだ後にこのカリキュラムを受講したのですが、基礎的な研修をこなした後や実務に少し慣れてきた頃に取り組むと、理解が深まり、ステップアップにつながる内容だと感じました。
- 毎月、社内LT大会や勉強会が実施されていますが、最近参加した中で、「これは面白かった!」という技術的な話題や、得られた刺激があれば教えてください。
「社内案件不具合TOP10」という勉強会の発表が特に印象に残っています。この発表では、発表者がフロントエンドの案件で経験した不具合について紹介していました。最初に、なぜ不具合が発生するのか、統計的にどのような不具合が多いのかを説明した後、不具合を多い順に10個紹介していく構成です。その中で登場した「デグレーション」や「パターンの確認不足による不具合」は、私が現在担当している業務でも特に意識しているポイントです。リファクタリングがメインなので、リファクタリング前と動作が変わっていないか、見落としているテストケースはないかを確認しながら作業しています。この発表のおかげで、改めて気を引き締めて作業に取り組もうと思えました。
- これからエンジニアとしてのキャリアをスタートさせたい、特に地方で働きたいと考えている方に向けて、ご自身の経験を振り返ってメッセージをお願いします!
地方でエンジニアとしてキャリアをスタートさせたい方に伝えたいのは、「場所にとらわれず、主体的に学び続けることの大切さ」です。
私自身、東北でWeb開発に携われる環境を探してRuby開発に出会いました。入社してみると、完全リモートワークやフレックスタイム制といった柔軟な働き方、メンターやコミッターによるサポート、LTや勉強会など学びの機会が豊富にあり、地方にいながらも成長のチャンスが多くあることを実感しました。
研修やプロジェクトを通して、わからないことを整理してアウトプットすることや、困ったときに周囲に相談することの重要性も身にしみて学びました。こうした経験を通して、自分から学びを取りに行く姿勢があると、地方でも十分にスキルやキャリアを伸ばせると感じています。
Ruby開発では、こうした学びを支える環境が整っています。地方でエンジニアとしてキャリアを始めたい方にとって挑戦しやすい環境ですので、ぜひ興味がある方はRuby開発でチャレンジしてみてほしいです。