Senior Full-Stack Engineer - Product

Full Stack Engineer · Senior · Full Time · Remote

Remote (United States) · RemoteUSD 150k – 220k30mo ago
Apply for this role

Opens Railway's application page

Role

What you'll do.

Railway is seeking a Senior Full-Stack Engineer to build powerful, intuitive software tools that enhance developer productivity. The ideal candidate will create end-to-end features across UI and backend systems, leveraging TypeScript, GraphQL, and innovative infrastructure technologies to transform how developers build and deploy applications.

Responsibilities

  • Full-Stack Feature Development: Build comprehensive features from UI dashboard to backend microservices using Temporal workflow orchestration
  • API Design: Craft TypeScript + GraphQL APIs with robust data modeling for internal and external users
  • Product Engineering: Develop Engineering Requirement Documents to transform ideas into well-defined, implementable tasks with success metrics
  • Infrastructure Innovation: Contribute to open-source repositories and develop tools that enhance developer productivity and deployment processes

Qualifications

What we look for.

Technical

  • Frontend Architecture

    Strong understanding of interactive frontend systems for efficient data fetching, mutation, and rendering

  • Backend Complexity

    Experience managing complex asynchronous backend jobs, particularly in build and deployment pipelines

  • API Development

    Expertise in building GraphQL APIs with strong type guarantees and data modeling

Education

  • Computer Science

    Bachelor's degree in Computer Science, Software Engineering, or equivalent practical experience

Experience

  • Full-Stack Development

    5+ years of full-stack engineering experience with demonstrable end-to-end product development capabilities

Skills

Required

  • TypeScript

    Proficient in TypeScript for both frontend and backend development

  • GraphQL

    Experienced in designing and implementing GraphQL APIs

  • Microservices

    Understanding of microservices architecture and workflow orchestration

Preferred

  • Rust

    Nice to have

    Familiarity or willingness to learn Rust for open-source contributions

  • Temporal

    Nice to have

    Experience with Temporal workflow management platform

Tech stack

Languages

TypeScriptRust

Frameworks

GraphQLTemporal

Databases

ClickHouse

Tools

NixNixpacks

Other

Railway Platform

Compensation

Pay and benefits.

Base·USD 150,000 – 220,000

Benefits

  • Health Insurance

    Comprehensive health benefits including coverage for dependents

  • Equity Grants

    Strong equity compensation package

  • Equipment Stipend

    Allowance for work-related equipment and setup

  • Flexible Work Culture

    Highly autonomous environment with minimal meetings and global distributed team

Process

Interview steps.

  1. 01

    Initial Discussion

    Open-ended conversation to understand candidate's background, goals, and aspirations

  2. 02

    Project Assessment

    Asynchronous project to build a container management application using Railway's GraphQL API

  3. 03

    Technical Review

    In-depth code review and discussion with team members, focusing on problem-solving and technical approach

  4. 04

    Team Interview

    Meeting with four team members from different company sections to assess communication and team fit

  5. 05

    Final Discussion

    Offer details and role specifics discussed directly with the CEO

Full posting

Original listing.

This is a remote position available anywhere in the world! Linkedin makes us show a country, but we hire the best people wherever they are.

Our core mission at Railway is to make software engineers higher leverage. We believe that people should be given powerful tools so that they can spend less time setting up to do, and more time doing.

At Railway, we believe that making tooling more accessible for build and deployment is one of the greatest possible productivity unlocks of our generation. We also believe that the major roadblock between us and our goal is strong interfacing paradigms.

If you’re looking to build an operating system for builders, we’d love to talk with you!

Curious? Learn more in our blog post about this team and the great work they’re doing: Team Spotlight: Product Engineering (https://blog.railway.app/p/team-spotlight-product-engineering)

About the role

For this role, you will:

  • Build features end-to-end, from the UI in our dashboard to orchestrating workflows that interact with our microservices using Temporal.

  • Craft intuitive interfaces that allow our users to interface with powerful computing paradigms, with help from our design team.

  • Build TypeScript + GraphQL APIs with strong guarantees around modeling data, allowing both internal and external users to build against.

  • Write Engineering Requirement Documents to take something from idea, to defined tasks, to implementation, to monitoring it’s success.

  • Experience with, or at least the desire to learn Rust to contribute to our open-source repositories (CLI, Nixpacks, etc).

Some projects full-stack engineers have worked on in the past

  • Rebuild logging infrastructure to support 1B logs/day, from configuring ClickHouse to developing a brand new observability UI

  • Build Git for infrastructure and re-thinking how a project evolves over time

  • Build a tool for building user code into a deployable image using Nix packages. (github.com/railwayapp/nixpacks)

  • Create interfaces to visualize project infrastructure on a 2D canvas

  • Add support for migrating deployments with a volume from one region to another using Temporal

  • Create a marketplace for users to share re-usable pieces of infrastructure

This is a high impact, high agency role with direct effect on company culture, trajectory, and outcome.

About you

  • An ability to autonomously lead, design, and implement great product experiences, from front to back.

  • A strong understanding of frontend architecture to build interactivity-rich systems for fetching, mutating, and rendering data effectively

  • Experience managing complex asynchronous backend jobs for something like a build/deploy pipeline.

  • A desire to be a part of the entire project development process. From research gathering and planning, to implementation and monitoring

  • Great written and verbal communication skills for expressing ideas, designs, and potential solutions in mostly-asynchronous manner

We value and love to work with diverse persons from all backgrounds

Things to know

For better or worse, we're a startup; our team dynamics are different from companies of different sizes and stages.

  • We're distributed ALL across the globe, and that's only going to be more and more distributed. As a result, stuff is ALWAYS happening.

  • We do NOT expect you to work all the time, but you'll have to be diligent about your boundaries because the end of your day may overlap with the start of someone else's.

  • We're a small team, with high ownership, who are not only passionate about what we do, but seek to be exceptional as well. At the time of writing we're 21, serving hundreds of thousands of users. There's a lot of stuff going on, and a lot of ambiguity.

  • We want you to own it. We believe that ownership is a key to growth, and part of that growth is not only being able to make the choices, but owning the success, or failure, that comes with those choices.

Benefits and perks

At Railway, we provide best in class benefits. Great salary, full health benefits including dependents, strong equity grants, equipment stipend, and much more. For more details, check back on the main careers page.

Beyond compensation, there are a few things that we believe that make working at Railway truly unique:

  • Autonomy: We have very few meetings. Just a Monday and a Friday to go over the Company Board. We think your time is sacred, whether it's at work, or outside of work.

  • Ownership: We're a company with a high ownership, high autonomy culture. We hope that you'll come in, help us, and over the course of many years do the best work of your life. When we bring you onboard, we expect you to change the company.

  • Novel problems/solutions: We're a startup that's well funded, with cool problems, which lets us implement novel solutions! We abhor “busywork” and think, whether it's community, engineering, operations, etc there's always opportunity for creative and high leverage solutions.

  • Growth: We want you to grow with us, but we know that talent is loaned, so when you figure out what area you want to grow in next, whether it's at Railway or outside, we'll make sure you land there.

How we hire

No tricks. No surprises. Here's the entire process:

  1. Talk with us about the role

    • This is completely open ended and we're just trying to see who you are, what you want to do, and where you wanna go.

  2. Work on a small project to discuss in the interview

    • Asynchronously implement the following:

      • Build an application to spin up and spin down a container using our GQL API. Please deploy on Railway before the interview and we will review the code during your interview. The app needs to have a UI component and not just a backend that uses the API.

      • You will submit your solution before the interview, and sit down with a member of the team and go over the above. We'll poke into your solution, as well as get you acquainted with a member of the team.

      • You can, and SHOULD! ask us questions ahead of time.

  3. Review your solution with the Team

    1. You'll sit down with someone on the team and go over the above. We'll poke into your solution, as well as get you acquainted with a member of the team.

      1. Looking for: Learn about your problem solving skills. How you break down a problem and how you present a solution.

      2. Interview Structure to expect when you review with the team (60 Minutes):

      3. 0-5 minutes: Introductions

      4. 5-35 minutes: Walking through the code, talking about how you’d extend it

      5. 35-50 minutes: Noodling on technology, frameworks, how you think about product

      6. 50-60 minutes: Time for you to ask your interviewers question

  4. Meet the Team

    1. You'll meet the Team, which will be comprised of 4 people from vastly different sections of the company.

      1. Looking for: How you work with the rest of the team and communicate.

  5. Offer and Details Chat with CEO

    1. Finally, we will go over the process, the role, and hammer out the details about your position, onboarding, and all the deets.

#Global

Redirects to Railway's application page.

Other roles

More at Railway.

View all 7 roles