← All open roles

Open Role

Senior Software Engineer

Reports To: Chief Technology Officer
Location: Remote (United States; Eastern, Central, or Mountain time zone preferred)
Department: IT/Engineering
Classification: Full-Time, Exempt
Salary: $150,000–$190,000

About Student First Technologies

Student First Technologies builds Theodore, the platform behind education funding programs across the country. Scholarship-granting organizations, state agencies and nonprofits use it to run Education Savings Accounts, tax-credit scholarships and family grants, from application and eligibility through disbursement and reporting. Over more than a decade, Theodore has administered over $1.3 billion in education funds for more than 300,000 students and families in 15+ states.

We believe every child is unique and deserves an education tailored to their gifts and talents. Our software makes that possible at scale: it gives programs the guardrails the law requires, and gives families, schools and vendors an easy way to take part. When a family is approved for a scholarship or pays a tutor from their ESA, that runs through our code.

The work is growing. ESA programs are expanding fast, and the new federal scholarship tax credit takes effect January 1, 2027, bringing donor-funded scholarships to every state that opts in. Programs trust us with public funds and family data, so we hold a SOC 2 Type 2 certification and are audited every year. We’re a small engineering team behind a large, mature Ruby on Rails application that’s in active transition toward modern Rails conventions. That makes this a good place for engineers who like improving real systems while shipping real features.

The Role

You’ll own features end to end in Theodore, our Rails monolith. That means reading a state’s program rules, designing the data model, shipping the change, and answering the support question two weeks later. You’ll work closely with product and program operations, and leave each part of the codebase a little better than you found it. You’ll weigh in on architecture, while our Staff engineer sets direction across the whole system.

What You’ll Do

  • Build and maintain features across our portals for families, schools, vendors and program administrators.
  • Turn program rules (eligibility, award amounts, approved expenses) into configuration and code that differs by program.
  • Build features that move real money through our banking integrations: ACH disbursements, virtual card payments, reimbursements and reconciliation. Correctness matters more than speed here.
  • Build auditable systems that track every dollar in a ledger and record who changed what, and why.
  • Protect sensitive family data, including financial and personal records, in everything you build.
  • Write thorough RSpec tests, and improve the coverage and reliability of the ones we have.
  • Modernize older code toward current Rails conventions, both as part of feature work and as dedicated projects.
  • Review pull requests with care, and write your own so they’re easy to review.
  • Take turns on business-hours triage: investigate production issues, trace them through logs and data, and fix the root cause.

What You’ll Bring

  • 5+ years building and maintaining production web applications, ideally including several years of Ruby on Rails.
  • Strong SQL and PostgreSQL skills: you can read a query plan, write a safe migration on a large table, and model data that has to stay consistent.
  • Comfort with server-rendered Rails (ERB and Stimulus), plus plain JavaScript and CSS.
  • A testing habit. You write specs because they let you change code safely, not because CI requires them.
  • Experience working in a large codebase you didn’t write, and judgment about when to refactor and when to leave it alone.
  • Experience working on a remote team.
  • Clear written communication. Most of our collaboration happens in tickets, pull requests and Slack.

We prefer Rails experience, but we’ll consider strong engineers from other web stacks, such as Python/Django, PHP/Laravel, or JavaScript/Next.js, who are ready to get productive in Rails quickly.

Nice to Have

  • Experience with payments, banking or fintech, such as banking API integrations, ACH, card issuing, ledgers or reconciliation.
  • Experience building multi-tenant SaaS.
  • Experience running background jobs and third-party API integrations at scale.
  • Experience with edtech, government or nonprofit software.
  • Experience with Hotwire and/or ReActionView.
  • Experience with Heroku, AWS and GitHub Actions.

How We Work

  • Every change goes through a pull request with review and a passing CI run.
  • Work is tracked in Asana and discussed in Slack; we write things down.
  • We ship small, safe changes frequently, and document every release for compliance.
  • We use AI coding tools every day, but a person owns every line we ship. Whether an agent wrote the code or you did, you’re expected to understand it, test it and stand behind it.

Work Environment

  • Fully remote within the United States. The team meets in person about once a quarter for a few days of team-building. Other travel, such as for a client meeting, is rare. The company pays for all work-related travel.
  • Engineers are rarely expected to attend client meetings.
  • Primarily computer-based work, including extended periods of reading code and documentation and participating in video meetings.
  • We believe that healthy conflict produces great work, and strive to create opportunities for everyone, regardless of role or seniority, to share their knowledge and perspective toward that end.

Benefits

  • Flexible time off with no set cap. We want you to take the time you need to rest and recharge.
  • Health insurance, including HSA- and FSA-eligible plan options.
  • Dental and vision insurance.
  • Life insurance.
  • Short-term disability, fully paid by the company.
  • Hospital, critical illness and accident insurance.

How to Apply

If you are interested, please email team@studentfirsttech.com.

Equal Opportunity

Student First Technologies is an equal opportunity employer. We do not discriminate on the basis of race, color, religion, sex, sexual orientation, gender identity, national origin, age, disability, veteran status or any other protected characteristic. This description reflects the role’s current responsibilities, which may change as the company evolves.

‍