Senior Ruby on Rails Developer

Caterpillar Inc.Kennett Square, PA
1d

About The Position

Your Work Shapes the World at Caterpillar Inc. When you join Caterpillar, you're joining a global team who cares not just about the work we do – but also about each other. We are the makers, problem solvers, and future world builders who are creating stronger, more sustainable communities. We don't just talk about progress and innovation here – we make it happen, with our customers, where we work and live. Together, we are building a better world, so we can all enjoy living in it. About Tangent Energy Solutions: Tangent Energy Solutions is a wholly owned subsidiary of Caterpillar, a global leader in the manufacturing of construction and mining equipment, diesel and natural gas engines, industrial gas turbines, and diesel-electric locomotives. Headquartered in Kennett Square, Pennsylvania, Tangent Energy Solutions was established in 2009 to provide innovative energy solutions for commercial and industrial customers. We are looking for an experienced Senior Ruby on Rails Developer to join our team. The ideal candidate will have a deep understanding of the Ruby on Rails framework and experience working with its cutting-edge features. Additionally, the candidate must have experience with deploying Rails applications on a scale to AWS cloud services.

Requirements

  • Software Development: Knowledge of software development tools and activities; ability to produce software products or systems in line with product requirements.
  • Level Extensive Experience: • Conducts walkthroughs and monitors effectiveness and quality of the development activities. • Elaborates on multiple-development toolkits for traditional and web-based software. • Has participated in development of multiple or large software products. • Contrasts advantages and drawbacks of different development languages and tools. • Estimates and monitors development costs based on functional and technical requirements. • Provides consulting on both selection and utilization of developers' workbench tools.
  • Software Development Life Cycle: Knowledge of software development life cycle; ability to use a structured methodology for delivering and managing new or enhanced software products to the marketplace.
  • Level Working Knowledge: • Describes similarities and differences of life cycle for new product development vs. new release. • Identifies common issues, problems, and considerations for each phase of the life cycle. • Works with a formal life cycle methodology. • Explains phases, activities, dependencies, deliverables, and key decision points. • Interprets product development plans and functional documentation.
  • Software Integration Engineering: Knowledge of software integration processes and functions; ability to design, develop and maintain interfaces and linkage to alternative platforms and software packages.
  • Level Working Knowledge: • Has experience with designing data exchange interfaces to and from software product. • Describes tools and techniques for extraction, transformation and loading of electronic data. • Cites examples of common linkage requirements for software products and vendors. • Works with integrating software into the customer or partner framework and infrastructure. • Participates in the development of technology interfaces and bridges.
  • Software Product Design/Architecture: Knowledge of software product design; ability to convert market requirements into the software product design.
  • Level Extensive Experience: • Demonstrates experience with the architecture and design of major or multiple products. • Describes major software architecture alternatives and considerations. • Explains design considerations for commercial database systems, operating systems and web. • Displays experience in estimating the cost of a specific design of a proposed product. • Facilitates design reviews and walkthroughs. • Analyzes benefits and drawbacks of specific software designs and architecture.
  • Software Product Technical Knowledge: Knowledge of technical aspects of a software products; ability to design, configure and integrate technical aspects of software products.
  • Level Working Knowledge: • Maintains and utilizes data related to install base configurations and environments. • Solicits customer feedback; reports and monitors bugs and implementation issues. • Participates in defining and conducting technical acceptance tests. • Participates in creating technical requirements for software development and deployment. • Explains basic environment and product configuration options.
  • Software Product Testing: Knowledge of software product testing; ability to design, plan, and execute testing strategies and tactics to ensure software product quality and adherence to stated requirements.
  • Level Working Knowledge: • Participates in test readiness reviews, functional, volume, and load testing. • Describes key features and aspects of a specific testing discipline or methodology. • Tests software components for compliance with functional requirements and design specifications. • Explains procedures for documenting test activities and results (e.g. errors, non-conformance, etc.) • Conducts functional and performance testing on aspects of assigned products.

Nice To Haves

  • 8+ years of recent professional experience in Ruby on Rails development (highly desired)
  • Expert-level knowledge of the Rails framework (version 7+) and its core libraries
  • Experience building modern Rails front-end applications using Turbo and Stimulus
  • Experience with and commitment to automated testing for both front- and back-end functionality
  • Experience deploying containerized Rails applications at scale to AWS cloud services
  • Strong understanding of web application architecture, object-oriented programming, and design patterns
  • Proficiency using git and experience with GitHub Enterprise and GitHub actions
  • Familiarity with Ancillary Services in the energy market
  • Experience with generator and energy storage control systems
  • Familiarity with SCADA systems and related protocols (modbus, DNP3, MQTT, etc)
  • Experience with IoT systems and data streaming applications
  • Excellent communication and interpersonal skill

Responsibilities

  • Design, develop and maintain Ruby on Rails applications.
  • Work collaboratively with other team members to build new features and enhance existing ones.
  • Ensure code quality and maintainability by writing tests, conducting code reviews, and following industry best practices.
  • Troubleshoot and resolve complex technical issues.
  • Participate in the design and architecture of new systems and applications.
  • Provide guidance and mentorship to junior developers.

Benefits

  • Medical, dental, and vision benefits
  • Paid time off plan (Vacation, Holidays, Volunteer, etc.)
  • 401(k) savings plans
  • Health Savings Account (HSA)
  • Flexible Spending Accounts (FSAs)
  • Health Lifestyle Programs
  • Employee Assistance Program
  • Voluntary Benefits and Employee Discounts
  • Career Development
  • Incentive bonus
  • Disability benefits
  • Life Insurance
  • Parental leave
  • Adoption benefits
  • Tuition Reimbursement
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service