5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SmartHRAdvent Calendar 2023

Day 6

Ruby未経験者がRubyな会社で生き延びるための三種の神器

Last updated at Posted at 2023-12-06

SmartHR Advent Calendar 2023シリーズ2の6日目です。

SmartHRは、RubyKaigi2023Kaigi on Rails 2023などRuby系のテックカンファレンスやRailsガイドに協賛しており、また、イベントでの登壇や書籍の執筆などRubyに精通したエンジニアが数多く在籍しています。
それゆえ、多くのプロダクトでRuby(Rails)が採用されたりもしています。

そんなRubyな会社にRuby未経験で入社(2023/4〜)した私が、これまで生き延びるためにすがりついている活用しているツールやサービスを「三種の神器」として紹介します。

その1 RubyMine

言わずとしれたJetBrains社製のIDEです。以下の機能をよく利用しています。

コードジャンプ

調べたい変数やオブジェクトの定義元にジャンプします。定義元では、使用箇所の一覧を参照することもできます。

コード補完

かなり精度高く、書きたいコードをサジェストしてくれます。

ブレークポイント

ブレークポイントを設定した箇所で処理が中断され、中断された時点のプログラムの状態をGUIで参照できます。対話形式のコンソールを操作することも可能で、任意の変数やオブジェクトを参照したり操作したりできます。

※今気づいたのですが、RubyMine公式サイトでより詳細に機能が紹介されているので、併せて参照してみてください。

その2 binding.pry

Pry
ソースコード内にbinding.pryを差し込んでプログラムを実行すると、該当箇所で処理が中断され、中断時点のスコープでPryセッションが開始されます。Pryセッションでは対話的操作でプログラムの状態を参照したり操作したりできます。デバッグの際に重宝します。
IDEのブレークポイントでも同じことができますが、なんら設定が不要で思い立ったら即使えるため、よく利用しています。

※今気づいたのですが、SmartHR TechBlogでより詳細な解説記事がありましたので、併せて参照してみてください。binding.pryキホンのキ

その3 AIサービス

GitHub Copilot

ReturnキーとTabキーを連打するだけでプログラムがかけてしまう魔法のツールです。(※これはボケです)
設計や処理内容が頭に入ってさえいれば、適切なコメントを書くだけでほぼ正確なコードをサジェストしてくれます。未だにRubyの細かなシンタックスに慣れていない部分があるので...本当に心強いです。

※今気づいたのですが、GitHub Copilotさんに頼り切っているからいつまで経ってもシンタックスを覚えられないのかもしれません。

ChatGPT

ハマったときによく相談します。私自身がそうですが、誰かに相談するとき、相談内容の整理に時間をかける方は少なくないと思います。ChatGPTさんは、わからないことがわかってない状態の相談でも真摯に対応してくれます。怒られることも馬鹿にされることも絶対にないので、安心して相談ができます。

※実際に困ったことを相談してシュッと解決できた図
chatGPTに相談した際の画面スクショ1枚目
chatGPTに相談した際の画面スクショ2枚目
chatGPTに相談した際の画面スクショ3枚目
chatGPTに相談した際の画面スクショ4枚目

※これらAIサービスはSmartHRにおけるAIサービス利用方針に基づき、その範囲内で利用しています。

まとめ

以上、Ruby未経験者がRubyな会社で生き延びるための三種の神器として

  • RubyMine
  • binding.pry
  • AIサービス

を紹介しました。

私はこれらのツールやサービスを駆使することで、曲がりなりにも成果を上げ(ているはず...多分)、なんとか生き延びることができています。
これすなわち、適したツールやサービスを駆使することで特定領域の経験/知識不足を多少は補える。ということなんだと思います。
本当にいい時代...。

使えるものは使い頼れる人には頼りながら、引き続きチャレンジングな仕事に首を突っ込んで行きます!!

5
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?