freehire launches on Product Hunt on 26 August.

Follow →

Fullstack Engineer (MOE)

Summary

Build and maintain the Scanvas web platform and ScanController desktop app, integrating scanner hardware and AI/ML services (LLMs, OCR) for exam processing. You'll work with API routes, job queues, and cloud infrastructure optimized for high throughput.

  • Solid full-stack experience
  • Comfort building desktop applications
  • Experience with hardware or device integration
  • Experience integrating AI/ML APIs into production systems
  • Comfort with cloud infrastructure
  • Strong foundation in software hygiene
  • Ability to reason about algorithmic complexity
  • Understanding of concurrency
  • Experience with AI-integrated systems engineering
  • Ability to design for operational reality
  • Build and maintain the Scanvas web platform — API routes, background job queues,
  • database models, and the canvas-based template editor that assessment staff use to
  • configure OMR zones.
  • - Build and maintain the ScanController desktop application — the interface between
  • scan-room operators, the scanner hardware, and the cloud backend.
  • - Integrate hardware: scanner SDKs, driver interfaces (TWAIN/ISIS/WIA or vendor APIs),
  • and scan-capture pipelines that validate quality and handle errors before upload.
  • - Integrate AI services: LLM APIs for OMR template generation, computer vision for zone
  • detection, and document OCR/ICR for handwritten and typed responses on mix-form
  • booklets.
  • - Design and optimise for throughput — job queues, concurrency limits, rate-limited
  • external AI calls, and S3 storage pipelines that must sustain peak exam-season load.
  • - Collaborate with the Product Manager and operations team to turn real scan-room
  • workflows into software that people trust under pressure.
  • - Maintain engineering rigour: TDD, typed code, clean API boundaries, meaningful CI
  • gates, and documentation that the next engineer can actually use.
  • What We're Looking For
  • The fundamentals matter most. We are not prescriptive about your current stack. Engineers
  • who understand why systems behave the way they do pick up new frameworks quickly.
  • Engineers who only know their current framework struggle when the problem doesn't fit the
  • tutorial.
  • What the fundamentals look like in practice:
  • - You can design a system given a set of constraints and articulate the trade-offs you
  • made. You don't need a framework to do this.
  • - You understand concurrency — threads, event loops, async/await — well enough to
  • reason about race conditions and bottlenecks, not just write await and hope.

See also