
Rafael Franca contributed to Shopify’s ruby-lsp and rubocop-sorbet repositories, focusing on developer tooling, static analysis, and CI/CD automation. He migrated test suites to Minitest, modernized development environments with Nix, and automated release processes to streamline gem publishing. Rafael enhanced static code analysis by refining RuboCop Sorbet cops, reducing false positives, and improving configuration consistency. He addressed performance bottlenecks in gem dependency resolution and expanded internationalization support in ruby-lsp-rails. Using Ruby, YAML, and TypeScript, Rafael’s work emphasized maintainability, reproducibility, and onboarding efficiency, delivering robust backend improvements and reliable developer experiences across Ruby and Rails codebases.
February 2026: Delivered reproducible development workflows and reliability improvements across two key repositories. In rubocop-sorbet, introduced a Nix-based development environment to improve dependency management and reproducibility, fixed a crash in ObsoleteStrictMemoization when Layout/LineLength is disabled, and released 0.12.0 with updated documentation. In ruby-lsp, enhanced developer experience with watchman integration and a Ruby 4.0.1 devcontainer, strengthened bundleGemfile handling and path resolution (early validation and传through of resolved values), and simplified IPv4 socket usage for tests. Strengthened testing and code quality through a minitest 6 upgrade, test deduplication, AGENTS.md adoption, and targeted refactors (Set usage and class-level method improvements). These changes reduce onboarding time, improve LSP reliability, and lower maintenance costs, while showcasing strong Ruby, DevOps, and testing capabilities.
February 2026: Delivered reproducible development workflows and reliability improvements across two key repositories. In rubocop-sorbet, introduced a Nix-based development environment to improve dependency management and reproducibility, fixed a crash in ObsoleteStrictMemoization when Layout/LineLength is disabled, and released 0.12.0 with updated documentation. In ruby-lsp, enhanced developer experience with watchman integration and a Ruby 4.0.1 devcontainer, strengthened bundleGemfile handling and path resolution (early validation and传through of resolved values), and simplified IPv4 socket usage for tests. Strengthened testing and code quality through a minitest 6 upgrade, test deduplication, AGENTS.md adoption, and targeted refactors (Set usage and class-level method improvements). These changes reduce onboarding time, improve LSP reliability, and lower maintenance costs, while showcasing strong Ruby, DevOps, and testing capabilities.
January 2026 (Month: 2026-01) was marked by a strong focus on stability, performance, and reproducible engineering practices across Shopify's Ruby tooling. Key architectural refinements reduced technical debt and positioned the teams for faster future feature delivery. Highlights include consolidating method handling in ruby-lsp to improve maintainability, fixing a critical gem dependency collection loop to reduce CPU usage, modernizing tooling and packaging with Nix adoption and hygiene improvements, expanding I18n hover support in ruby-lsp-rails, and lifting CI/CD and environment readiness for Ruby 4.0, Rails 8.1, and SQLite upgrades. These efforts delivered tangible business value through more reliable builds, faster feedback cycles, and a clearer path to new feature work.
January 2026 (Month: 2026-01) was marked by a strong focus on stability, performance, and reproducible engineering practices across Shopify's Ruby tooling. Key architectural refinements reduced technical debt and positioned the teams for faster future feature delivery. Highlights include consolidating method handling in ruby-lsp to improve maintainability, fixing a critical gem dependency collection loop to reduce CPU usage, modernizing tooling and packaging with Nix adoption and hygiene improvements, expanding I18n hover support in ruby-lsp-rails, and lifting CI/CD and environment readiness for Ruby 4.0, Rails 8.1, and SQLite upgrades. These efforts delivered tangible business value through more reliable builds, faster feedback cycles, and a clearer path to new feature work.
October 2025 – Shopify/rubocop-sorbet: Focused on static analysis enhancements with a dependency upgrade to RuboCop Sorbet v0.11.0. Delivered improved analysis accuracy and reduced false positives by updating VersionAdded fields for Sorbet cops. No major bugs fixed this month; release strengthens code quality, maintainability, and CI stability, accelerating safe deployments and faster developer feedback. Technologies demonstrated: Ruby, RuboCop, Sorbet, dependency/version management, and release tooling.
October 2025 – Shopify/rubocop-sorbet: Focused on static analysis enhancements with a dependency upgrade to RuboCop Sorbet v0.11.0. Delivered improved analysis accuracy and reduced false positives by updating VersionAdded fields for Sorbet cops. No major bugs fixed this month; release strengthens code quality, maintainability, and CI stability, accelerating safe deployments and faster developer feedback. Technologies demonstrated: Ruby, RuboCop, Sorbet, dependency/version management, and release tooling.
June 2025 – Shopify/rubocop-sorbet: Focused on increasing lint accuracy for advanced Sorbet/RBS usage, tightening block-method handling, and smoothing the 0.10.3 rollout. Key deliveries included: ActiveSupport::Concern: RuboCop Sorbet linter now correctly exempts method definitions inside class_methods blocks, drastically reducing false positives and improving DX (commit fb0a23597d2aca3a4a73f26ad69ba1600883d2ac). Block Method Definition Cop enhancements that robustly handle heredocs, methods without bodies, and comments, plus extensive tests (commits 6921abe84a8d151ca1f23bf4c3184c3206508683; d72894412c8c30507cb7d156184f5796aabe7a52; a9e99cde72bbbe07fafb3f93084d5927f4c593cd). Enforce Signatures: autocorrect consolidation for RBS and Sig, with a new helper and broader internal improvements, setting up a smoother 0.10.3 rollout (commits 5a361dd78d466e306686ce834b3ab42edd446e306; b6eebb69f58c4f26409b3a0ec467f4a9d7c466f6; e3500fa48fa25e57a94906fa72612c4fae542765; 7f01462876f1ae4ca79f9f226d95b98d069d8a4b).
June 2025 – Shopify/rubocop-sorbet: Focused on increasing lint accuracy for advanced Sorbet/RBS usage, tightening block-method handling, and smoothing the 0.10.3 rollout. Key deliveries included: ActiveSupport::Concern: RuboCop Sorbet linter now correctly exempts method definitions inside class_methods blocks, drastically reducing false positives and improving DX (commit fb0a23597d2aca3a4a73f26ad69ba1600883d2ac). Block Method Definition Cop enhancements that robustly handle heredocs, methods without bodies, and comments, plus extensive tests (commits 6921abe84a8d151ca1f23bf4c3184c3206508683; d72894412c8c30507cb7d156184f5796aabe7a52; a9e99cde72bbbe07fafb3f93084d5927f4c593cd). Enforce Signatures: autocorrect consolidation for RBS and Sig, with a new helper and broader internal improvements, setting up a smoother 0.10.3 rollout (commits 5a361dd78d466e306686ce834b3ab42edd446e306; b6eebb69f58c4f26409b3a0ec467f4a9d7c466f6; e3500fa48fa25e57a94906fa72612c4fae542765; 7f01462876f1ae4ca79f9f226d95b98d069d8a4b).
May 2025 monthly summary for Shopify/rubocop-sorbet focused on delivering features, improving code quality, and accelerating gem releases. Key outcomes include migration to Minitest, linting improvements, dev environment modernization, and release automation enabling faster, safer releases. This month established a foundation for broader test coverage while tightening static analysis and developer onboarding.
May 2025 monthly summary for Shopify/rubocop-sorbet focused on delivering features, improving code quality, and accelerating gem releases. Key outcomes include migration to Minitest, linting improvements, dev environment modernization, and release automation enabling faster, safer releases. This month established a foundation for broader test coverage while tightening static analysis and developer onboarding.

Overview of all repositories you've contributed to across your timeline