Senior Software Engineer

Escher Group•Boston, MA
•$110,000 - $140,000

About The Position

Escher powers the world’s first and last mile deliveries, helping Posts connect nearly 1 billion consumers with global ecommerce networks. Postal operators rely on Escher to deliver an enhanced retail and digital customer experience, to activate new revenue streams, and to realize new delivery economics. Escher has begun a programme with a national post to modernise the systems behind its counters. At the centre of that programme is the Product Journey Engine (PJE). Every counter transaction — from posting a parcel to a cash withdrawal — runs as a journey: a defined sequence of what the clerk is asked, what the systems look up, what the devices do, and where every outcome goes. A journey is a self-contained JSON definition. A visual Designer produces it; a Journey Engine executes exactly what it says. That definition is the only contract between the two — and because this is a national post, every step of every journey has to be explainable after the fact. We are hiring two Senior Software Engineers. Each leads one area of the platform, and both work as a single team alongside the Chief Architect, the Designer team, a product designer, and the client's ePOS and integration partners. We develop AI-first and expect heavy use of AI-assisted tooling — with architecture, correctness and judgement remaining yours. That judgement is the job: knowing what deterministic and never repeated must mean at a till, and catching an ambiguous specification before it ships.

Requirements

  • Post-secondary education in Computer Science or Software Engineering.
  • Substantial experience leading the delivery of a non-trivial component or service, end to end.
  • Strong in C#/.NET or TypeScript, with working ability or willingness to learn the other — the two areas share one message contract and one team.
  • Experience with JSON, JSON Schema and contract-driven design between components.
  • Understands that tests matter as much as the code, and is comfortable owning the automated testing of their own work rather than delegating it.
  • Comfortable building from a written specification, and able to say clearly when the specification is wrong or incomplete rather than code around it.
  • Take non-functional requirements seriously: performance, traceability, and security are first class concerns, not afterthoughts.
  • Experience building reusable libraries or SDKs consumed by others, with an eye for clean, stable public APIs and versioning.
  • Experience with Git workflows and CI/CD pipelines (Azure DevOps, GitHub Actions)
  • Able to meet the security clearance requirements of the target Escher client.
  • Has built or maintained a workflow engine, rules engine, state machine or similar execution runtime.
  • Understands deterministic evaluation, immutability and idempotency — and takes seriously the problem of proving them.
  • Experience writing .NET for a constrained environment, and profiling and optimising within its limits (WebAssembly here; comparable environments such as Unity are acceptable).
  • Experience sandboxing user-authored expressions or scripts: what they may read, what they must never reach.
  • Experience in POS, payments or other transactional systems where a duplicated or lost commit has real cost.
  • Experience architecting large, multi-component JavaScript/HTML applications.
  • Experience building embedded or hosted JavaScript applications — Electron, Capacitor, embedded webviews, or widgets running inside a third party's page.
  • Solid browser platform knowledge: DOM, iframes, cross-document messaging, sandboxing, and the practicalities of code you do not control the page for.
  • Experience integrating with hardware peripherals or device services from a browser or embedded runtime.
  • .NET / C# / .NET Core and TypeScript / JavaScript (strong in one; working ability or willingness to learn the other).
  • JSON and JSON Schema.
  • Git workflows; CI/CD pipelines (Azure DevOps, GitHub Actions).

Nice To Haves

  • Experience with >NET / JavaScript interoperability a plus.
  • WebAssembly experience — especially building WebAssembly with .NET — a strong plus, but not required.
  • Exposure to WebAssembly or other compiled-to-browser runtimes, and consuming them from JavaScript, a plus.
  • Experience with React and Material Design a plus.

Responsibilities

  • Lead the design and delivery of one area of the PJE platform, working from the runtime specification with the Chief Architect.
  • Own the contracts in your area — between engine and host, and with the Designer — including their versioning and the cost of breaking them.
  • Troubleshoot and resolve technical issues across the engine/host boundary.
  • Own the automated testing story for your area: tests are part of the deliverable, not a hand-off to a test engineer.
  • Translate requirements and the specification into designs and JIRA stories, and challenge the specification where it is wrong or incomplete.
  • Mentor other developers and take part in code reviews.

Benefits

  • competitive compensation package
  • training opportunities
  • free coffee and snacks when in the office
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service