{"id":3694594,"url":"https://alion.io/job/ruby-labs-senior-full-stack-developer-next-js","title":"Senior Full-Stack Developer (Next.js)","company":{"id":6377,"name":"Ruby Labs","domain":"rubylabs.com","url":"https://alion.io/company/rubylabs","size_band":null,"is_staffing_agency":false,"employer_type":"direct","is_intermediary":false,"listed_via":null,"ats_vendor":"Ashby","truth_index":{"grade":"B","score":83,"open_postings":6,"ghost_share":0,"stale_share":0.667,"repost_share":0,"time_to_fill_p50_days":34,"computed_at":"2026-11-04T06:34:25Z"}},"role":"Backend","role_family":"Backend","seniority":"senior","employment_type":"full_time","work_mode":"remote","remote_scope":"stated_countries","remote_scope_basis":"board_field","remote_working_hours":{"label":"CET","utc_offset_min":1,"utc_offset_max":1},"hiring_geo_confidence":"inferred","locations":[],"countries":[],"hiring_countries":["BA","RS","TR","UA","GE","MK"],"hiring_countries_total":6,"salary":null,"salary_estimate":null,"experience_years_min":2,"visa_sponsorship":false,"relocation_package":false,"has_equity":false,"technologies":[{"name":"Claude Code","optional":false},{"name":"Cloudflare","optional":false},{"name":"Cypress","optional":false},{"name":"Fastify","optional":false},{"name":"Gitflow","optional":false},{"name":"Jest","optional":false},{"name":"Material UI","optional":false},{"name":"Model Context Protocol","optional":false},{"name":"Next.js","optional":false},{"name":"Node JS","optional":false},{"name":"Playwright","optional":false},{"name":"PostgreSQL","optional":false},{"name":"React Hook Form","optional":false},{"name":"React.js","optional":false},{"name":"Rest API","optional":false},{"name":"Ruby","optional":false},{"name":"shadcn/ui","optional":false},{"name":"Strapi","optional":false},{"name":"Tailwind CSS","optional":false},{"name":"TypeScript","optional":false},{"name":"Vitest","optional":false},{"name":"Zod","optional":false},{"name":"Zustand","optional":false},{"name":"Git","optional":true},{"name":"JavaScript","optional":true},{"name":"Radix UI","optional":true}],"status":"live","first_seen_at":"2026-11-03T13:50:53Z","employer_posted_date":"2026-11-03","last_verified_at":"2026-11-04T18:10:18Z","board_verified":true,"closed_at":null,"days_open":1,"trust":{"level":"ok","repost_count":null,"flags":[],"days_open":1},"description":"About us\nRuby Labs is a leading tech company that creates and operates innovative consumer products. We offer a diverse range of opportunities across the health, education, and entertainment industries. Our innovative teams are driving the future of consumer-led products, and we're always looking for passionate individuals to join us. Learn more about our story at: https://rubylabs.com/about-us/\nAbout the role\nWe are looking for a disciplined, highly autonomous Middle Next.js Developer to build and ship product features for one of our core D2C subscription products. You will own features end to end across a TypeScript monorepo - a Next.js App Router client, a Fastify + Payload CMS API on PostgreSQL, and Cloudflare Workers at the edge - from the moment you receive a task, through breaking it down, estimating, implementing, testing, and observability, to a clean release to production and confirmation that it works for real users.\nThis is a hands-on engineering role suited for someone who treats production as the standard, not the finish line. Half-tested code, silent failures, and unverified AI-generated output are not acceptable. The codebase is convention-heavy - a layered Feature-Sliced Design structure with strict import rules - and you are expected to work inside those conventions rather than around them. You are accountable for every task you take on and for every area of the product you touch: if it breaks, regresses, or stays half-finished, that is yours to see through. We expect maximum autonomy and real involvement in the product - you work independently within a sprint, communicate risks before they become blockers, and escalate architectural decisions to senior engineers rather than guessing.\nKey Responsibilities\nFeature Development\nBuild features across the Next.js client and the Fastify + Payload CMS backend according to product requirements\n\nWrite code that follows the team's Feature-Sliced Design layering, naming, and import conventions\n\nShip changes behind feature flags and A/B experiments, fully localized across every supported locale\n\nIntegrate third-party providers - billing, email/CRM, analytics - over REST APIs and webhooks\n\nQuality & Reliability\nCover functionality with unit, integration, and e2e tests at the level the team expects\n\nRun a thorough self-review before code review, and review teammates' code with the same rigour\n\nFix bugs and perform root-cause analysis for recurring issues\n\nOptimize page and endpoint performance - rendering and caching strategy, database queries, bundle size\n\nSecurity & Observability\nApply secure development practices: schema validation, access control, safe handling of secrets\n\nFollow observability practices - structured logging, metrics, and alerts - using existing tooling\n\nCollaboration\nBreak down, estimate, and ship your own tasks to production within the sprint - and stay accountable for them after release\n\nOwn the areas of the product you work in: their stability, performance, and follow-up fixes\n\nSurface requirement clarifications, estimate changes, and risks early and in writing\n\nEscalate complex architectural decisions and critical risks to senior engineers\n\nQualifications\nMust-Have Experience\n2+ years of commercial React experience, including 1+ year with Next.js (App Router, Server Components, route handlers, rendering and caching strategies) and solid TypeScript\n\nNode.js backend experience on a typed HTTP framework (Fastify, Nest, or Express) with PostgreSQL - REST API design, schema migrations, integrations over REST and webhooks (signature verification, idempotency, retries) - plus a working understanding of HTTP/REST, auth mechanisms, and web security fundamentals\n\nHands-on with the modern client stack: TanStack Query, Zustand, React Hook Form + Zod, Tailwind CSS, and a React component library such as HeroUI, MUI, or shadcn/ui\n\nExperience with a code-first headless CMS on PostgreSQL (Payload, Strapi, Directus, or equivalent) - collections, access control, generated types, migrations\n\nTesting and delivery discipline: e2e tests (Cypress or Playwright) and unit/integration tests (Vitest or Jest), Git flow, code review, working with CI\n\nDaily use of AI development tools (Claude Code or equivalents), including configuring them for a project - context, instructions, rules, MCP/integrations - with full ownership of the quality, security, and correctness of generated code\n\nEnglish - B1+\n\nLeadership Attributes\nOwns the outcome - takes a task from requirement to production without waiting to be pushed, and stays accountable for the result and the area it touches\n\nMaximally autonomous and involved - needs a goal, not step-by-step instructions, and cares how the product performs, not just whether the ticket is closed\n\nVerifies before trusting - treats AI output, third-party responses, and your own code as unproven until tested\n\nStructured communicator - surfaces risks, blockers, and estimate changes early, in writing, in a remote team\n\nKnows the edge of their scope - escalates architectural and security decisions instead of improvising them\n\nLearns from incidents - fixes the root cause, not just the symptom\n\nLocation\nRuby Labs operates within the CET (Central European Time) zone. Applicants from any country are welcome to apply for the position as long as they are located within approximately ± 4 hours of CET. This ensures optimal collaboration and communication during working hours.\nBenefits\nDiscover the perks of being part of our vibrant team! We offer:\nRemote Work Environment: Embrace the freedom to work from anywhere, anytime, promoting a healthy work-life balance.\n\nUnlimited PTO: Enjoy unlimited paid time off to recharge and prioritize your well-being, without counting days.\n\nPaid National Holidays: Celebrate and relax on national holidays with paid time off to unwind and recharge.\n\nCompany-provided MacBook: Experience seamless productivity with top-notch Apple MacBooks provided to all employees who need them.\n\nFlexible Independent Contractor Agreement: Unlock the benefits of flexibility, autonomy, and entrepreneurial opportunities. Benefit from tax advantages, networking opportunities, reduced employment obligations, and the freedom to work from anywhere. Read more about it here: https://docs.google.com/document/d/1nkrN76JlZkbKj9WSOhlT1_mni_CZeDkHdwfIjPXVwvk/preview?tab=t.0#heading=h.ndsdl4wapxtt\n\nBe part of our fast-growing team and seize this excellent opportunity for personal and professional growth!\nInterview Process\nAfter submitting your application, we conduct a thorough review which typically takes 3 to 5 days, but may occasionally take longer due to the volume of applications received. If we see a potential fit, we proceed with the following steps:\nRecruiter Screening (40 minutes)\n\nTechnical Interview (60 minutes)\n\nLife at Ruby Labs\nAt Ruby Labs, we move fast, aim high, and expect the same from our team. We’re not here to play small-we’re here to build, grow, and win. That means we look for people who are ambitious, driven, and ready to give their best every single day.\nThis is a place for individuals who thrive under pressure, embrace challenges, and see opportunity in every obstacle. If you’re hungry to achieve, motivated by impact, and want to grow at the speed of your own ambition, Ruby Labs offers the platform to make it happen.\nHere, effort is matched with reward. We recognize those who go all in and deliver results, and we create space for people who want more-more responsibility, more growth, and more success.","description_format":"text","description_chars":7529,"description_truncated":false,"requirements":{"experience_years_min":2,"management_years_min":null,"team_size_min":null,"manages_managers":false,"education":null,"security_clearance":false,"languages":[{"language":"English","level":"Intermediate (B1)","optional":false}]},"benefits":["Apple Macbook","Unlimited PTO"],"hiring_locations":[{"name":"Bosnia and Herzegovina","iso":"BA","kind":"country"},{"name":"Serbia","iso":"RS","kind":"country"},{"name":"Turkey","iso":"TR","kind":"country"},{"name":"Ukraine","iso":"UA","kind":"country"},{"name":"Georgia","iso":"GE","kind":"country"},{"name":"North Macedonia","iso":"MK","kind":"country"}],"hiring_excludes":[],"relocation_offered":false,"industries":["Consumer Goods","Data & Analytics","Consumer Health Apps","Consumer & Utility Software"],"lifecycle":[{"event":"open","at":"2026-11-03T17:38:38Z"}],"visa":[],"liveness":{"score":90,"band":"hot","label":"Hiring now","p_open":1,"p_active":0.903,"p_room":1,"age_days":0,"expected_fill_days":34,"reasons":["conf:2","velocity","win:early"],"computed_at":"2026-11-04T06:34:25Z"},"pay":null,"html_url":"https://alion.io/job/ruby-labs-senior-full-stack-developer-next-js","json_url":"https://alion.io/job/ruby-labs-senior-full-stack-developer-next-js.json","meta":{"generated_at":"2026-11-04T21:02:00Z","cache_seconds":300,"methodology":"https://alion.io/methodology","terms":"https://alion.io/terms","contact":"https://alion.io/contact","api":"https://alion.io/developers","about":"Alion is a live layer of people, companies and AI agents: who they are, whether they are real and active right now, what they do and how to work with them, readable by people and by agents and paid per call.","catalog":"https://alion.io/catalog.json","usage":{"tier":"crawler_verified","counted_by":"address","units_charged":1,"used_today":32562,"day_limit":null,"remaining_today":null,"minute_limit":300,"resets_at":"2026-11-05T00:00:00Z"}},"offers":[{"id":"company.slices","title":"One company in depth, by slice","status":"live","price":{"credits":0.02,"usd":0.002,"plus_per_slice":{"credits":0.05,"usd":0.005}},"unit":"per company, plus each slice with data","note":"the employer in depth","call":{"mcp_tool":"get_company","arguments":{"id":6377},"rest":"https://alion.io/mcp/rest/get_company?id=6377"},"human":"https://alion.io/catalog?offer=company.slices&for=job%2Fruby-labs-senior-full-stack-developer-next-js"},{"id":"market.stats","title":"A market slice: pay, demand and time to fill","status":"live","price":{"credits":1,"usd":0.1},"unit":"per slice","note":"pay, demand and time to fill for this role and place","call":{"mcp_tool":"market_stats"},"human":"https://alion.io/catalog?offer=market.stats&for=job%2Fruby-labs-senior-full-stack-developer-next-js"},{"id":"job.search","title":"Open jobs by role, technology, place, pay and visa","status":"live","price":{"credits":0.02,"usd":0.002},"unit":"per posting in a list","note":"similar open postings","call":{"mcp_tool":"search_jobs"},"human":"https://alion.io/catalog?offer=job.search&for=job%2Fruby-labs-senior-full-stack-developer-next-js"},{"id":"company.verify","title":"Is this company real and active right now","status":"pilot","price":null,"unit":"per company","request":{"url":"https://alion.io/catalog/request","method":"POST","body":"{\"offer\": \"company.verify\", \"for\": \"job/ruby-labs-senior-full-stack-developer-next-js\", \"note\": \"what you need it for\"}"},"human":"https://alion.io/catalog?offer=company.verify&for=job%2Fruby-labs-senior-full-stack-developer-next-js"}],"agent":{"mcp":"https://alion.io/mcp/jobs","mcp_open":"https://alion.io/mcp/open","next":[{"tool":"get_job","arguments":{"id":3694594}},{"tool":"search_jobs","arguments":{"company":"rubylabs.com","detail":"compact"}},{"tool":"match_people","arguments":{"job_id":3694594},"note":"people open to offers who fit this vacancy"}],"note":"The same data through MCP tools: https://alion.io/mcp/open needs no sign-in (compact searches, postings, people); https://alion.io/mcp with an Alion account has everything. Docs: https://alion.io/developers"}}