At a Glance
- Tasks: Design and build high-performance blockchain data services using Rust.
- Company: Join Midnight, a cutting-edge data-protection blockchain company.
- Benefits: Competitive salary, remote work, and opportunities for professional growth.
- Other info: Collaborative remote environment with exciting projects and career advancement.
- Why this job: Shape the future of blockchain technology while protecting personal freedoms.
- Qualifications: 3+ years in software development, 2+ years in Rust, and strong problem-solving skills.
The predicted salary is between 60000 - 80000 £ per year.
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.
Your primary focus will be the Midnight Indexer — the Rust service that streams blockchain data from Midnight nodes to wallets and end-user applications through a high-performance GraphQL API. It ingests block history, processes it, stores it efficiently across PostgreSQL (cloud) and SQLite (standalone), and serves real-time subscriptions, with the wallet integration and privacy guarantees that sit at the heart of Midnight.
The Indexer will be your home base, but we want someone whose skills travel. As you grow into the stack, you will have the opportunity to contribute to adjacent components such as the Node (our Substrate-based blockchain node) and the Ledger (transaction structure, state, and zero-knowledge proofs). We value breadth and curiosity across the platform as much as depth in any single component.
Requirements
- 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.
Key Competencies 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.
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.
Software Engineer (Indexer Focus) - Shielded employer: Io Global
At Midnight, we pride ourselves on being an innovative employer that champions a culture of collaboration and continuous learning. As a Software Engineer focusing on the Indexer, you will not only work with cutting-edge Rust technology but also have the opportunity to grow your skills across various components of our blockchain platform. Our remote-first environment fosters flexibility and inclusivity, allowing you to contribute meaningfully while enjoying a healthy work-life balance.
StudySmarter Expert Advice🤫
We think this is how you could land Software Engineer (Indexer Focus) - Shielded
✨Join Local Tech Meetups
Get out there and mingle with fellow developers by joining local tech meetups. It’s a fantastic way to meet people who might be working at Io Global or know someone who does. Plus, you can pick up some trendy tech skills and trends while you're at it!
✨Contribute to Open Source Projects
Show off your coding chops by jumping into open-source projects. Not only does this give you practical experience, but it also gets you noticed in the dev community. You'll create a killer portfolio that speaks volumes about your skills to Io Global.
✨Tap into Online Developer Communities
Don’t underestimate the power of online developer communities like GitHub, Stack Overflow, and even Reddit. Participate in discussions, share your projects, and build your visibility. We can often find opportunities through these channels that can lead to a full-time gig at companies like Io Global.
✨Explore Job Boards Specifically for Tech Roles
Keep your eyes peeled on job boards that focus on tech roles. Sites like TechCareers or Stack Overflow Jobs can often have listings for companies like Io Global that might not show up on broader job sites. Make it a habit to check these regularly, and don’t hesitate to apply directly through our website!
We think you need these skills to ace Software Engineer (Indexer Focus) - Shielded
Some tips for your application 🫡
Show off your coding skills:When applying for a software engineering role, it's super important to showcase your coding skills. Make sure your CV includes your tech stack, any relevant programming languages you’re comfortable with, and examples of projects you've worked on. If you have a GitHub profile, link it up! We love to see code in action.
Tailor your portfolio:For a full-time role, we’d expect to see some solid examples of your work in your portfolio. Make sure to include at least two or three projects that highlight your problem-solving skills and your ability to work with different technologies. Focus on the projects that are most relevant to the position at Io Global.
Craft a killer cover letter:Your cover letter is your chance to stand out—make it personal! Explain why you want to work at Io Global and how your skills align with the role. Show us your passion for software development. We dig enthusiastic candidates who understand the value of collaboration and continuous learning!
Be clear and concise:When it comes to writing your CV and cover letter, clarity is key. Avoid jargon that could confuse us and stick to simple, direct language. Highlight your achievements with quantifiable results where possible, and keep everything easy to read. A well-organised application goes a long way!
How to prepare for a job interview at Io Global
✨Brush Up on Your Coding Skills
For a full-time software engineering role, it's crucial that we stay sharp with our coding abilities. Expect technical questions that might involve solving problems on the spot or discussing algorithms. Practise on platforms like LeetCode or HackerRank to get comfortable with the types of questions that often come up.
✨Know Your Tools and Frameworks
Make sure we’re well-acquainted with the tools and technologies listed in the job description. Familiarise ourselves with any specific frameworks or programming languages mentioned. If Io Global uses React or Node.js, for instance, be ready to discuss how we’ve used them in previous projects or coursework.
✨Showcase Your Projects
Bring along a portfolio that highlights our best work. This could be code samples, GitHub repositories, or any side projects we’ve built. Make sure we can talk through our thought process for each project, especially the challenges we faced and how we solved them—this shows our problem-solving skills in action.
✨Prepare for Behavioural Questions
While technical skills are key, full-time positions also require cultural fit. Be ready to discuss our previous experiences and how we handle teamwork, conflict, and deadlines. Brush up on the STAR method—Situation, Task, Action, Result—to clearly articulate our past experiences when discussing how we've contributed to a team.