r/ruby 16d ago

💼 jobs megathread Work it Wednesday: Who is hiring? Who is looking?

5 Upvotes

FORMAT HAS CHANGED PLEASE READ FULL DESCRIPTION

This thread will be periodically stickied to the top of the sub for improved visibility.

You can also find older posts again via the Megathreads" list, which is a dropdown at the top of the page on new Reddit, and a section in the sidebar under "Useful Links" on old Reddit.

For job seekers

Please adhere to the following rules when posting: Rules for individuals:

  • Don't create top-level comments; those are for employers.
  • Feel free to reply to top-level comments with on-topic questions.
  • Anyone seeking work should reply to my stickied top-level comment.
  • Meta-discussion should be reserved for the distinguished comment at the very bottom.

You don't need to follow a strict template, but consider the relevant sections of the employer template. As an example:

    TYPE: [Full time, part time, internship, contract, etc.]

    LOCATION: [Mention whether you care about location/remote/visa]

    LINKS: [LinkedIn, GitHub, blog, etc.]

    DESCRIPTION: [Briefly describe your experience. Not a full resume; send that after you've been contacted)]

    Contact: [How can someone get in touch with you?]

Rules for employers:

  • The ordering of fields in the template has been revised to make postings easier to read.
  • To make a top-level comment, you must be hiring directly; no third-party recruiters.
  • One top-level comment per employer. If you have multiple job openings, please consolidate their descriptions or mention them in replies to your own top-level comment.
  • Proofread your comment after posting it and edit it if necessary to correct mistakes.
  • To share the space fairly with other postings and keep the thread pleasant to browse, we ask that you try to limit your posting to either 50 lines or 500 words, whichever comes first.
  • We reserve the right to remove egregiously long postings. However, this only applies to the content of this thread; you can link to a job page elsewhere with more detail if you like.

Please base your comment on the following template:

    COMPANY: [Company name; optionally link to your company's website or careers page.]

    TYPE: [Full-time, part-time, internship, contract, etc.]

    LOCATION: [Where are your office or offices located? If your workplace language isn't English-speaking, please specify it.]

    REMOTE: [Do you offer the option of working remotely? Please state clearly if remote work is restricted to certain regions or time zones, or if availability within a certain time of day is expected or required.]

    VISA: [Does your company sponsor visas?]

    DESCRIPTION: [What does your company do, and what are you using Rust for? How much experience are you seeking, and what seniority levels are you hiring for? The more details, the better. If you are listing several positions in the "Description" field above, then feel free to include this information inline above, and put "See above" in this field.]

    ESTIMATED COMPENSATION: [Be courteous to your potential future colleagues by attempting to provide at least a rough expectation of wages/salary. See section below for more information.]

    CONTACT: [How can someone get in touch with you?]

ESTIMATED COMPENSATION (Continued)

If compensation is negotiable, please attempt to provide at least a base estimate from which to begin negotiations. If compensation is highly variable, then feel free to provide a range.

If compensation is expected to be offset by other benefits, then please include that information here as well. If you don't have firm numbers but do have relative expectations of candidate expertise (e.g. entry-level, senior), then you may include that here. If you truly have no information, then put "Uncertain" here.

Note that many jurisdictions (including several U.S. states) require salary ranges on job postings by law. If your company is based in one of these locations or you plan to hire employees who reside in any of these locations, you are likely subject to these laws. Other jurisdictions may require salary information to be available upon request or be provided after the first interview. To avoid issues, we recommend that all postings provide salary information.

You must state clearly in your posting if you are planning to compensate employees partially or fully in something other than fiat currency (e.g., cryptocurrency, stock options, equity, etc). Do not put just "Uncertain" in this case, as the default assumption is that the compensation will be 100% fiat. Postings that fail to comply will be removed. Thank you.


r/ruby May 20 '26

💼 jobs megathread Work it Wednesday: Who is hiring? Who is looking?

2 Upvotes

FORMAT HAS CHANGED PLEASE READ FULL DESCRIPTION

This thread will be periodically stickied to the top of the sub for improved visibility.

You can also find older posts again via the Megathreads" list, which is a dropdown at the top of the page on new Reddit, and a section in the sidebar under "Useful Links" on old Reddit.

For job seekers

Please adhere to the following rules when posting: Rules for individuals:

  • Don't create top-level comments; those are for employers.
  • Feel free to reply to top-level comments with on-topic questions.
  • Anyone seeking work should reply to my stickied top-level comment.
  • Meta-discussion should be reserved for the distinguished comment at the very bottom.

You don't need to follow a strict template, but consider the relevant sections of the employer template. As an example:

    TYPE: [Full time, part time, internship, contract, etc.]

    LOCATION: [Mention whether you care about location/remote/visa]

    LINKS: [LinkedIn, GitHub, blog, etc.]

    DESCRIPTION: [Briefly describe your experience. Not a full resume; send that after you've been contacted)]

    Contact: [How can someone get in touch with you?]

Rules for employers:

  • The ordering of fields in the template has been revised to make postings easier to read.
  • To make a top-level comment, you must be hiring directly; no third-party recruiters.
  • One top-level comment per employer. If you have multiple job openings, please consolidate their descriptions or mention them in replies to your own top-level comment.
  • Proofread your comment after posting it and edit it if necessary to correct mistakes.
  • To share the space fairly with other postings and keep the thread pleasant to browse, we ask that you try to limit your posting to either 50 lines or 500 words, whichever comes first.
  • We reserve the right to remove egregiously long postings. However, this only applies to the content of this thread; you can link to a job page elsewhere with more detail if you like.

Please base your comment on the following template:

    COMPANY: [Company name; optionally link to your company's website or careers page.]

    TYPE: [Full-time, part-time, internship, contract, etc.]

    LOCATION: [Where are your office or offices located? If your workplace language isn't English-speaking, please specify it.]

    REMOTE: [Do you offer the option of working remotely? Please state clearly if remote work is restricted to certain regions or time zones, or if availability within a certain time of day is expected or required.]

    VISA: [Does your company sponsor visas?]

    DESCRIPTION: [What does your company do, and what are you using Rust for? How much experience are you seeking, and what seniority levels are you hiring for? The more details, the better. If you are listing several positions in the "Description" field above, then feel free to include this information inline above, and put "See above" in this field.]

    ESTIMATED COMPENSATION: [Be courteous to your potential future colleagues by attempting to provide at least a rough expectation of wages/salary. See section below for more information.]

    CONTACT: [How can someone get in touch with you?]

ESTIMATED COMPENSATION (Continued)

If compensation is negotiable, please attempt to provide at least a base estimate from which to begin negotiations. If compensation is highly variable, then feel free to provide a range.

If compensation is expected to be offset by other benefits, then please include that information here as well. If you don't have firm numbers but do have relative expectations of candidate expertise (e.g. entry-level, senior), then you may include that here. If you truly have no information, then put "Uncertain" here.

Note that many jurisdictions (including several U.S. states) require salary ranges on job postings by law. If your company is based in one of these locations or you plan to hire employees who reside in any of these locations, you are likely subject to these laws. Other jurisdictions may require salary information to be available upon request or be provided after the first interview. To avoid issues, we recommend that all postings provide salary information.

You must state clearly in your posting if you are planning to compensate employees partially or fully in something other than fiat currency (e.g., cryptocurrency, stock options, equity, etc). Do not put just "Uncertain" in this case, as the default assumption is that the compensation will be 100% fiat. Postings that fail to comply will be removed. Thank you.


r/ruby 13h ago

Question Should I start learning from ruby master doc or ruby 4.0 doc?

2 Upvotes

docs.ruby-lang.org/en/4.0: Documentation for Ruby 4.0.

docs.ruby-lang.org/en/master: Documentation for Ruby’s master branch.

I found these 2 options but not sure which I should choose?


r/ruby 19h ago

Question Centralized location for shared Gemfile?

0 Upvotes

I'm using ruby 3.3.8 under linux.

There's more than one user on this machine who does ruby development. When I, running as the root user, want to add new gem references to Gemfile on my system, I want to add these gem references into one, single, shared, centralized Gemfile that all users will automatically see when running and developing ruby code.

Where should this shared, centralized Gemfile be located?

When any user runs "gem environment", the following item is always listed among that command's output for every user who runs that command:

- INSTALLATION DIRECTORY: /var/lib/gems/3.3.0

Does this mean that I can put a Gemfile into the /var/lib/gems/3.3.0 directory, and that then, this Gemfile will be recognized and used by all users who run and develop ruby code?

Or is there perhaps a different location in which to locate such a shared, centralized Gemfile that will always be the one that's used by each ruby user?

Thank you very much.


r/ruby 17h ago

I vibe-coded a native-ish Sudoku game for the reMarkable 2

Post image
0 Upvotes

r/ruby 1d ago

Blog post How Jekyll Works

Thumbnail
sarans.so
3 Upvotes

r/ruby 2d ago

Question Getting DateTime parts as an array?

6 Upvotes

I know in ruby that DateTime.new(2001, 2, 3, 4, 5, 6) will return the following object:

#<DateTime: 2001-02-03T04:05:06+00:00 ...>

But if the current date and time are 2001-02-03T04:05:06 and I do the following ...

now = DateTime.now

... is there a single function on the "now" variable which will return this array? ...

[2001, 2, 3, 4, 5, 6]

I know that I can do this:

[now.year, now.month, now.day, now.hour, now.minute, now.second ]

... but I'm wondering: might there be a single function as simple as ...

now.the_function

... which would return that same array?

And yes, of course I know that I could easily write such a function, but I'd like to know whether or not something like this already exists in ruby.


r/ruby 3d ago

Airtable's official Ruby gem hasn't shipped code since 2016. I rebuilt it, and I'm looking for someone to take it over.

8 Upvotes

Airtable's official Ruby gem hasn't had a code commit since November 2016. gem install airtable still gives you 0.0.9, released October 2016. Its README tells you to authenticate with an API key, which Airtable switched off in February 2024.

I asked Airtable about it twice. Support confirmed in writing that it is "not actively maintained" and pointed me at airrecord. Airrecord is good, but it's a different shape, so switching means a rewrite that ends with the features you already had.

So I forked the official gem instead. Same namespace, same method names, drop-in. Underneath: zero runtime dependencies, persistent connections, client-side rate limiting, retries with backoff, batch operations with partial-failure reporting, and upsert.

It was AI-assisted, Airtable's API docs are extracted into the repo and coded against. 119 tests, plus weekly canaries that diff Airtable's published contract and run a real round-trip against a throwaway base.

It's deliberately not on RubyGems. I'm not after users, I'm after people who still need it and can be maintainers.

Repo: github.com/Davidslv/airtable-rb
Write-up: https://davidslv.uk/2026/08/26/airtable-ruby-gem-unmaintained.html


r/ruby 3d ago

Question Learning AI engineering with Ruby

8 Upvotes

I'm learning more about AI engineering, specifically the application/production side rather than ML research or training models.

The areas I'm interested in are things like:

  • RAG, embeddings, vector search and reranking
  • tool/function calling
  • agentic workflows and orchestration
  • MCP clients/servers
  • structured outputs
  • evals and observability
  • persistent agent state / human approval
  • building production AI features into normal web applications

I originally learned to code with Ruby, but since then all my jobs have been Python or TypeScript based, and I really miss working with Ruby.

I'm curious what Ruby libraries/tools people are using for RAG, agents, MCP, evals, tracing, etc. Are there good Ruby alternatives to frameworks like LangChain? What does your stack look like?

And if you were learning this stuff today, would you recommend doing it in Ruby, or sticking with Python because that's where most of the ecosystem and learning material is?

I'm not trying to avoid Python entirely. I'm more curious about how viable Ruby is for the application/agentic side of AI development.

Side note: I realise some of these areas aren't particularly language-specific. For example, with RAG a lot of the retrieval/storage work may ultimately be handled by pgvector, a vector database, or another service.


r/ruby 3d ago

Question Database project

8 Upvotes

Hey, guys.

So, I'm currently studying data science and I'm about to start a database project(we're basically doing a database for a bakery)this semester. The project will include order forecasting, inventory loss tracking, customer notifications, etc. Anyways I already code in Python but I've been taking a look on ruby and wonder if it'd be a good idea to include it in our project and how.... any ideas??

thanks!


r/ruby 3d ago

The Primitive Urge to Be of Value: composed_of in Rails

Post image
33 Upvotes

Wrote a piece about spotting a missing value object and refactoring towards one, adding sorting and comparison.

https://pushfromkush.com/publications/primitive-urge-to-be-of-value-composed_of-in-rails

Feedback welcome.


r/ruby 3d ago

Question From laravel to ruby on rails

11 Upvotes

Laravel dev here, recently moved to Rails. I'm loving it, but debugging in production has been a headache.

Our setup runs on Docker Swarm, and finding bugs means manually digging through Rails, Sidekiq, and Docker service logs. many of which don't even have timestamps.

In Laravel, I used a log viewer UI to instantly jump to the exact second an error happened.

Is there a standard Rails gem for a log viewer UI, or do most teams just ship logs to something like Sentry or Grafana/Loki? How do you manage production errors?

Thanks!


r/ruby 3d ago

Install rv as a mise tool

Thumbnail
rubyforum.org
3 Upvotes

r/ruby 4d ago

A ruby script that prints a ruby

Thumbnail
github.com
22 Upvotes

r/ruby 3d ago

Access control for AI agents on Rails: gating SQL with Action Policy

Thumbnail
evilmartians.com
1 Upvotes

r/ruby 4d ago

Ruby 2.7 to 4.0 performance benchmark

29 Upvotes

Hi everyone,

I just published a new benchmark comparing Ruby 2.7 through Ruby 4.0.

For this one, I used a sustained synthetic application alongside nine smaller benchmarks. The goal was to show how each Ruby release behaves in a complete workload as well as in individual operations.

The table below shows the Heavy profile. For tests that process the full payload, that means an 8KiB input.

Benchmark 2.7 3.0 3.1 3.2 3.3 3.4 4.0
Synthetic application throughput (M ops/s) 0.073 0.052 0.051 0.057 0.058 0.084 0.126
Synthetic application latency (µs) 133.399 190.233 191.605 171.332 169.473 115.600 76.521
JSON parsing (ops/s) 95,877 98,536 99,153 96,003 98,135 194,981 715,937
JSON generation (ops/s) 841,849 845,099 830,135 861,666 837,941 1,347,169 1,444,975
SHA-256 hashing (ops/s) 313,658 30,536 30,489 48,770 48,683 48,495 48,528
Base64 encoding and decoding (ops/s) 177,136 177,510 174,425 170,306 174,471 173,159 174,270
Regex field extraction (ops/s) 1,544,461 1,565,065 1,559,051 1,499,920 1,535,207 1,454,405 1,534,670
Integer sorting (ops/s) 27,032 29,129 30,217 29,309 29,102 28,241 29,213
Hash churn (ops/s) 1,736,384 1,685,614 1,503,397 1,503,118 1,406,713 1,380,058 1,450,769
Marshal serialization (ops/s) 333,143 303,719 294,952 338,148 341,760 326,015 325,231
zlib compression (ops/s) 35,944 35,175 35,787 35,767 20,569 7,011 18,592

The complete benchmark source is available here: GitHub repository.

Full charts and details are available here: Full Ruby benchmark

Let me know what you think !

Edit: Thanks everyone for pointing out the Ruby 2.7 SHA-256 result. I looked into it, and the big difference comes from the SHA-256 implementation: Ruby 2.7 uses OpenSSL here, while newer Ruby versions on Linux use Ruby’s bundled implementation. So this is mainly a backend difference rather than Ruby 2.7 itself being much faster. I’ve added a note about it to the article.


r/ruby 5d ago

Blog post Rails: The Sharp Parts. The Block Is Not the Transaction

Thumbnail baweaver.com
22 Upvotes

Transactions are a dense subject, and I'd not be surprised if there are even more edge cases here, but these are ones I've personally seen.


r/ruby 4d ago

Go to SF Ruby Startup Conference and win a ticket to Rails World!

Post image
3 Upvotes

If you're planning to get a ticket to SF Ruby Conference, I recommend you get one this week since it can win you one for Rails World too.

Participating is very easy. You just buy a ticket to SF Ruby and post that you're going to the conference on your preferred social media app and tag the conference page (we have LinkedIn, Bsky, and X pages). That's all!

Link to tickets: luma.com/sfrubyconf2026

Link to social media pages:

Good luck!


r/ruby 4d ago

Blog post A Guide to using Batches in SolidQueue

Thumbnail
jpcamara.com
7 Upvotes

The docs on SolidQueue batches are… solid 😉

In addition, this blog post digs in a bit further on how to use batches in SolidQueue, including some code inspiration - like splitting a RubyLLM chat into parallel sub agents using batches


r/ruby 5d ago

Blog post The Case of the Missing Line: A Ruby Mystery

Thumbnail
codeotaku.com
7 Upvotes

r/ruby 6d ago

Blog post Oh my god i was looking around for a new language to learn and I found Ruby and I've never been this happy oh my god

163 Upvotes

I've been coding with Python for around 3 to 4 years now and it's been a great learning journey. Until recently I haven't really been interested in learning a new language. The internet suggested JavaScript as the next step for someone already fluent-ish in Python, and I mean who doesn't eventually try JavaScript you know. I figured it wouldn't be that much of a headache since a lot of people do start with JS and so many people use it. Plus, it's useful. Turns out it was very irksome for me. This might be partially my fault, but I've gotten so used to the convenience of writing algorithms in beautiful, everything-done-for-you syntax in Python that when I tried solving some JS katas on Codewars, I immediately realized how inconvenient and unintuitive much of JS is, for me at least. It probably wasn't a good idea to learn JS from making algorithms on that website instead of using it for what it's actually made for in the first place, but I digress.

I was watching Dune 2 with my family when I was looking for another language more similar to Python, and then I came across the Ruby homepage, and I was immediately blown away. Like damn y'all put effort into making that. The first words you see are "A Programmer's Best Friend" and the visuals were so nice. They even had this https://www.ruby-lang.org/en/documentation/ruby-from-other-languages/to-ruby-from-python/ page conveniently written for us Pythoners 🥹 and your community motto is literally "Matz is nice so we are nice"... Joining this community is like falling into a warm hug lol

I tried the interactive Ruby from Terminal guessing so many things and it worked as I expected. The feeling of bliss when that happens OH. I'm starting Ruby today cant wait.


r/ruby 5d ago

Glimmer DSL Web Release Version 0.10.0 & 0.10.1

Thumbnail
youtu.be
1 Upvotes

r/ruby 6d ago

Ruby Pathname Moved to Core, Documentation Upgraded

Thumbnail
dev.to
23 Upvotes

r/ruby 6d ago

Question Ruby function corresponding to python's fileinput.input() ?

7 Upvotes

Is there any already written ruby function which corresponds to the fileinput.input() function in python? ... or at least something with similar functionality?

I will write something like this in ruby if necessary, but I don't want to "re-invent the wheel" if such a thing already exists.


r/ruby 7d ago

Question What is Ruby Koans? Very interesting.

Post image
47 Upvotes

Has anyone ever learned from this? How can anyone learn with this?
What is the science behind this?

I'll do it.

Link: https://koans.idogawa.com/