The vacancy is well-defined but lacks compensation details, impacting overall quality.
Check Match β Just drop your CV
See your fit for Software Engineer (Indexer Focus) in seconds.
Overview
Join Input Output as a Software Engineer focusing on the Midnight Indexer. Contribute to a data-protection blockchain that safeguards sensitive data while working remotely. We are looking for a talented Rust engineer to help shape the future of Midnightβs products and technology. Midnight is a regulatory-friendly, data-protection blockchain that safeguards sensitive commercial and personal data, protecting fundamental freedoms of association, commerce, and expression for developers, companies, and individuals.
Duties
- β’Design, build, and operate the Indexerβs components in Rust β the chain indexer, the wallet indexer, the SPO indexer (Cardano partner-chain data), and the GraphQL API β keeping the architecture modular and maintainable.
- β’Build and maintain the data pipeline that fetches blocks and transactions from the Midnight node via subxt, handling finalized-block tracking, gap backfilling, and continuous real-time indexing.
- β’Design efficient schemas and queries across PostgreSQL (cloud) and SQLite (standalone), and keep latency and throughput healthy as the chain grows.
- β’Evolve the GraphQL API β queries, mutations, and real-time subscriptions over WebSockets β with care for the wallet model: secure sessions and correct handling of shielded data.
- β’Write and maintain unit, integration, and end-to-end tests; treat reliability and correctness as first-class concerns.
- β’Own operational quality for the service: observability, containerised deployment (Docker), and incident response.
- β’Participate in code reviews and technical design discussions, and collaborate closely with the node, ledger, wallet, and security teams β contributing to those components as you ramp up.
- β’Keep current with developments in Rust and blockchain technology, and apply them to improve the platform.
Education / Experience
- β’At least 3 years of experience in software development, with at least 2 years in the Rust programming language.
- β’Strong understanding of computer science fundamentals, including algorithms and data structures.
- β’Experience in developing and maintaining high-performance systems in Rust.
- β’Experience with blockchain technology is a plus.
- β’Experience in remote work and collaboration across different time zones.
- β’Experience working in scale-ups.
Core Requirements (the Indexer)
- β’Strong, idiomatic Rust β including async/await (tokio) and a solid grasp of concurrency.
- β’Backend / data-systems experience β you have built and operated high-performance services or data pipelines in production.
- β’Databases β practical experience with PostgreSQL and/or SQLite: schema design, query optimisation, and reasoning about performance.
- β’API design β designing and evolving service APIs; GraphQL experience is a big plus.
- β’Computer-science fundamentals β sound on data structures, algorithms, and concurrency.
- β’Engineering discipline β comfortable with rigorous testing, code review, and clear technical communication.
- β’Remote collaboration β effective working asynchronously across time zones.
Valued β enables you to contribute across the stack
These are not hard requirements. A strong async-Rust engineer can ramp on the blockchain specifics; the items below let you reach beyond the Indexer sooner.
- β’Substrate / Polkadot ecosystem β especially subxt, plus familiarity with pallets and runtime development.
- β’Blockchain core concepts β consensus mechanisms, cryptography, and transaction/state models.
- β’Applied cryptography or zero-knowledge β interest in the Ledgerβs transaction structure, state, and proving systems.
- β’WASM β compiling Rust to WebAssembly.
- β’Cardano / partner chains β Midnight runs as a Cardano partner chain, so this context is useful.