Design, build, and maintain backend services and APIs that power the Cash Forecasting platform, while remaining comfortable picking up frontend work when the task calls for it
Work across a large, sophisticated, multi-tenant SaaS codebase, writing code that's built to scale across enterprise customers and their data
Own the data layer, schema design, query performance, and data integrity - with a strong emphasis on PostgreSQL and SQL more broadly
Write and maintain thorough test coverage using RSpec, treating testing as a first-class part of delivery
Package and deploy services using Docker, and work within our AWS-based cloud infrastructure
Write scripts and tooling to automate repetitive work, support data migrations, and keep the team moving quickly
Instrument the systems you build with strong observability practices -logging, metrics, and tracing — to catch and resolve issues before they impact customers
Benchmark and profile code to identify performance bottlenecks, and make evidence-based decisions about where to optimise
Collaborate closely with product managers, designers, and fellow engineers to translate business and customer needs into robust technical solutions
Participate in code reviews and technical design discussions, contributing to the team's overall growth and improvement
Be a champion of the YBIYRI ethos (you-build-it-you-run-it), which includes participating in the on-call pager rotation
What You'll Bring:
4-8 years of professional software development experience, ideally including full-stack work with a backend lean
Strong SQL fundamentals; hands-on experience with PostgreSQL ideal
Comfortable working within large, sophisticated, existing codebases and making changes safely
Scripting ability for automation and tooling (language-agnostic)
Experience with Docker or other containerisation technologies
Proven Git proficiency, including collaborative branching workflows
Proficiency in at least one major programming language (such as Ruby, Python, or Java)
Experience employing AI tools throughout the development lifecycle to speed up problem-solving and delivery