Senior Smart Contract Engineer (Canton / Daml)
About onRails
onRails is asset infrastructure that brings assets to Canton. Our mission is to open the world's financial system by enabling assets to move across networks with privacy, compliance, and atomic settlement. The onRails platform includes cETH — a 1:1 representation of ETH on the Canton Network.
The role
You will own the on-ledger side of our products: the Daml contracts that mint, burn, transfer, and settle real assets, and the way our services interact with them. You will work closely with backend engineers who build the off-ledger automation, and take part in protocol design - bridges, mint/burn controls, and multi-party authorization.
Daml experience is not required. We expect you to learn Daml and the Canton model - privacy, stakeholders, signatories and controllers, topology - quickly, building on solid production smart-contract experience from other chains. Canton is evolving fast, so the role involves constantly learning new things and taking part in technical discussions with the Canton ecosystem.
What you will do
- Design, write, test, and review Daml smart contracts for asset issuance, transfers, settlement, and custody
- Integrate contracts with services via the Ledger API and JSON API v2, including interactive submission with external signing
- Own contract upgrades: smart contract upgrades, package versioning, and safe migration of live contracts
- Run security reviews of our contracts and integrations; prepare for and work with external auditors
- Contribute to protocol design
- Work with backend engineers on the off-ledger automation that drives on-ledger workflows
- Take part in technical discussions with the Canton ecosystem and keep up with how the platform evolves
What we are looking for
- 3+ years of writing production smart contracts
- Contracts you have shipped and secured that hold real value
- Deep understanding of authorization models, upgradeability, invariants, and how contracts fail
- Hands-on experience with audits - preparing for them, fixing findings, or performing reviews yourself
- Willingness and ability to learn a new language and ledger model quickly
- Clear written communication of designs, trade-offs, and risks
Nice to have
- Experience with bridges or cross-chain messaging
- Experience with functional programming languages (Haskell, OCaml, Scala, F#, etc.)
- Custody, MPC, or HSM-based key management
- Formal verification or property-based testing
- Experience with Canton, Daml
- Python for tooling and scripts
Ready to apply?
Send your CV and a brief note about the smart contracts you have shipped and why you're interested in joining onRails.