Senior Full Stack Ruby on Rails Software Engineer
Job description
About the role
This role develops and enhances Vestmark's financial advisor platform.
Software engineers turn product ideas into working code. Engineers work in small teams, review each other's work, and ship in small batches. Most teams follow agile practices such as sprints and daily standups. Engineers also write tests, fix bugs, and improve performance. The field values clear communication as much as technical skill. Engineers spend part of every week on planning, code review, and debugging, not just writing new code. The ability to explain a technical decision in plain words separates strong engineers from the rest.
Key facts
What you'll do
Backend and frontend work shapes the financial advisor platform, using Ruby on Rails and React to deliver core features. Designed RESTful APIs enable reliable communication between web and mobile applications. Written code follows best practices to ensure structure, reusability, and test coverage. Application performance and scalability are improved through targeted optimizations. Unit and integration tests validate functionality and protect against regressions. Code reviews, pair programming, and team discussions refine solutions and share knowledge. Deployments move applications into production, with monitoring handled alongside DevOps partners.
Requirements
Candidates bring 5+ years of experience building with Ruby on Rails in production settings. Candidates show 3+ years of work with React and modern JavaScript (ES6+). Hands-on experience with PostgreSQL or other relational databases is required. Engineers write scalable, secure, and maintainable code as a standard practice. Exposure to TypeScript and Inertia.js is preferred. A strong grasp of object-oriented and functional programming concepts guides design decisions. Familiarity with testing frameworks such as RSpec, Jest, or similar ensures quality verification. Containerization via Docker and cloud platforms such as AWS, Azure, or GCP is preferred. Authentication and authorization systems like Okta or Devise are preferred. Contributions align with core values including We Before Me, Positive Energy, Knowledge Explorer, and Own It.
Practical notes
Work is hybrid in Wakefield, MA or Boston, MA with an expected office presence. Employment decisions follow equal opportunity guidelines, and the role is posted as an equal opportunity employer. Typical interview steps
Hiring for engineering roles usually starts with a recruiter screen, followed by one or two technical rounds. Candidates often solve a coding problem, discuss past projects, and answer system design questions. Some loops include a take-home task. Final rounds typically cover team fit and give candidates a chance to ask questions. Interviewers look for how you break down an unfamiliar problem, not just whether you reach the answer. Practicing a few problems aloud and reviewing your own past projects are the best preparation.
Good to know
The role focuses on full stack development for financial advisory tools. Daily work involves Ruby on Rails, React, and related web technologies. Teams practice test-driven development and collaborative code reviews. Cloud infrastructure and containerization support deployment and scaling.
Questions to ask
Useful questions for the interview: what a typical week looks like, how work is assigned, what tools the team uses, and how feedback works. Asking how the role has changed recently and what the team wishes it had known when joining is also reasonable. Questions about the manager's priorities are especially valued.
Career growth
Engineering careers usually progress from individual contributor to senior, staff, and principal levels. Some engineers move into management and lead teams of five to twenty people. Others stay on the technical track. Growth follows demonstrated impact, not tenure alone. A typical engineering ladder has clear levels with defined expectations for scope, quality, and mentorship. Moving up usually requires owning outcomes end to end rather than completing assigned tickets.