About This Role
This role involves designing, developing, and maintaining robust and scalable backend systems, with a focus on resilient, secure, and optimized low-latency, real-time processing. The position is part of a dynamic, forward-thinking, fully remote team with an ambitious roadmap.
Responsibilities
- Design, develop, and maintain the core backend systems that power the Reya DeX and Network, writing clean, efficient, and maintainable code
- Support a high-throughput order-book and index on-chain data into event queues and various persistence layers to be consumed by the UI and Risk Dashboards via scalable APIs and WebSockets
- Define the high-level structure of the backend systems, the data flow, and interactions between the various components of the backend stack
- Focus on messaging and event-driven architecture patterns common in financial services
- Ensure the architectural design addresses reliability, high availability, and performance requirements
- Implement failover mechanisms, redundancy, and disaster recovery plans to minimize downtime
- Implement and maintain robust security measures to protect backend systems and APIs from a variety of attack patterns, including DDoS attacks, data breaches, and injection attacks
- Define the strategy for data storage, including selection of databases and data models suitable for financial applications
- Consider trade-offs between relational, key-value stores, and messaging queues
- Develop and execute a comprehensive testing strategy including unit, integration, security, load, and performance testing
- Collaborate with the development team to create and maintain detailed test reports and testing processes
- Stay updated on emerging technologies and trends in backend development and architecture
- Evaluate the potential adoption of new tools, frameworks, and methodologies to enhance system performance and scalability
- Clearly document the architectural design, making it accessible to the development team and non-technical audience
- Collaborate with software engineers to implement the design effectively and ensure that it aligns with the intended goals
- Participate in code reviews, mentor junior engineers, and enforce coding standards and best practices
- Work closely with the cross-functional team, including on-chain and front-end engineers, as well as the heads of product management and quant, CTO, and CEO
Requirements
- 8+ years of experience as a Backend Engineer with experience working in the financial services industry
- 6+ years of experience with Rust and/or C++ building highly scalable webservices
- Mastery of asynchronous programming and advanced concurrency patterns, with emphasis on thread safety and lock-free data structures