Location: Remote
Department: Engineering
Employment Type: Full-Time
About the platform
A B2B ordering & customisation portal where authorised users (teams, retailers, leagues) configure products and place/manage orders. The app is Rails-based with a modern JS front end (Vite), background processing (Sidekiq/Redis), and integrations for product customisation, fit/scans, and shipping. Data lives primarily in PostgreSQL, with some document-style payloads persisted in a secondary store.
What you’ll do
- Build and enhance end-to-end workflows (browse → configure → order → track) across Rails controllers/services and a JS SPA front end.
- Integrate with internal/external REST APIs (auth, pagination, retries, timeouts), and harden data contracts for order and “recipe/spec” payloads.
- Implement and maintain background jobs (imports, assets, emails) using Sidekiq/Redis with idempotency, retries/backoff, and basic alerting.
- Contribute to data modeling and validations in PostgreSQL; handle document-like data where appropriate (JSON/JSONB or a document store).
- Improve quality via request/service/worker tests, performance tuning, and pragmatic observability (logs/metrics).
- Participate in code reviews, grooming, and small design docs; help keep developer setup friction low.
Core tech you’ll work with
- Backend: Ruby on Rails (API + server-rendered endpoints), ActiveJob/Sidekiq
- Frontend: JavaScript, Vite (SPA build tooling)
- Data: PostgreSQL (primary), JSON/JSONB (and optionally a document store), Redis (queues/cache)
- Infra/Tooling: Git, CI, environment configs, secrets management
Must-have experience
- 3–5 years building web applications with Ruby on Rails, including controllers/services, validations, and background jobs (ActiveJob/Sidekiq).
- Strong SQL and schema literacy in PostgreSQL; comfort reading/writing JSON payloads and enforcing validations.
- Hands-on with Sidekiq + Redis in production: queues, concurrency, idempotent jobs, retries/backoff, and (basic) scheduling.
- API integration fundamentals: auth (tokens/keys), pagination, rate limits, timeouts, and resilient retries.
- Front-end fundamentals with modern JS (fetch/XHR flows, build tooling such as Vite) to wire UI actions to backend endpoints.
- Practical security hygiene: input validation, safe file handling, secrets, least-privilege access.
- Familiarity with a document store (e.g., MongoDB) or advanced JSONB patterns in Postgres.
Nice to have
- Experience with product customisation or asset pipelines (templates/elements, artwork generation, image processing).
- Shipping/logistics integrations (e.g., EasyPost/UPS/FedEx), or fit/scan style integrations.
- Observability basics (structured logging, metrics, dashboards) and performance profiling.
Soft Skills
- Self-starter with the ability to take ownership of features from design to deployment.
- Strong communication skills to work with cross-functional teams.
- Ability to translate business requirements into technical solutions.
- Detail-oriented with a focus on delivering high-quality, maintainable code.
What Success Looks like (first 90 days)
- Ship an improvement to a core flow (e.g., order submission or bulk import) with measurable latency/throughput gains.
- Add or upgrade one external API integration and land tests that validate the contract.
- Instrument key Sidekiq jobs with sane retries and minimal alerting; remove any long-running work from web threads.
- Author a small “how-to” or runbook entry (setup, tracing an order, or import workflow) to reduce onboarding friction.
What We Offer
- Opportunity to work on a high-impact B2B commerce platform that serves global brands.
- A collaborative, innovative, and flexible work environment.
- Exposure to cutting-edge technologies in e-commerce and product customisation.