HN user

nwalters512

75 karma
Posts1
Comments4
View on HN

PrairieLearn (Remote US) — Full-Stack Software Engineer — TypeScript / Postgres / React / AI

PrairieLearn (https://www.prairielearn.com) is an open-source assessment platform used by universities across the US (Berkeley, Princeton, Michigan, Illinois, and others). We power mastery-based learning and large-scale exams.

We’re a small, profitable, early-stage company (bootstrapped, no VC) that is growing quickly. Our users love us and we have very high retention and rapid spread through word of mouth. As an early-stage hire, you’ll work across the stack and enjoy meaningful ownership from day one.

Tech we use: Node.js / TypeScript backend, Postgres, AWS, React. We’re also developing AI tooling, including building LLM agents to help instructors create content and using vision-language models to help grade student work. PrairieLearn is open core: https://github.com/PrairieLearn/PrairieLearn

Details:

- Location: Remote (US only)

- Salary: $100k-$140k depending on experience

- Benefits: Stock options (0.5% - 1.5%), unlimited PTO, flexible hours

- Role: Full-time. (We’re not able to sponsor visas at this time.)

Apply at https://www.prairielearn.com/jobs-ashby?ashby_jid=ee6fdbc3-1...

A lot of (most?) useful work requires the kind of domain-specific knowledge that can only be built up over a lot of time spent working on a given team/product/codebase. "Renting" programmers here and there on an hourly basis might work fine for basic tasks, but would probably end in frustration for both the employer, who has to deal with a constant stream of random new people, and programmers, who are constantly bouncing from project to project.

A use case this doesn't address is embedding across two completely different domains, which is pretty common in the education space with LMS platforms like Canvas (https://www.instructure.com/canvas) embedding other tools for things like quizzes, textbooks, or grading. I ended up in a Chrome trial that disabled third-party cookies which broke a lot of these embeds because they can no longer set identity cookies that they rely on from within their iframe.