About the role
Responsibilities:
- Architecting and Execution: Leading the design, development, and delivery of low- latency, high-bandwidth distributed storage subsystems optimised to support high- scale AI workloads.
- Distributed Subsystems: Designing, implementing, and optimising cache synchronisation mechanisms, metadata synchronisation, and distributed consistency protocols across cluster environments.
- Low-Level Development: Writing, architecting, and debugging robust system-level software in C/C++ to build scalable distributed filesystems and object stores.
- Hardware and Kernel Optimisation: Applying deep knowledge of computer architecture and Linux kernel design to optimise system throughput, minimise latency, and maximise hardware utilisation.
- Integration and Standards: Driving technical integration for multi-tier distributed storage solutions (file, block, and object storage) while helping define subsystem engineering standards.
- AI Tooling Adoption: Championing the adoption of modern AI-assisted development tools (e. g., GitHub Copilot, integrated IDE features) to maximise software quality and development velocity across the team.
- Technical Leadership and Mentorship: Mentoring senior and mid-level engineers, leading technical design reviews, conducting rigorous peer code reviews, and guiding the team through complex system-level debugging and trade-off analysis.
Requirements:
- Bachelor's, Master's, or PhD degree in Computer Engineering, Computer Science, Electrical Engineering, or a related technical field.
- 7 to 10 years of hands-on professional experience in low-level systems engineering, distributed systems architecture, or high-performance computing.
- Proven track record of designing, building, scaling, and deploying production-grade distributed storage systems.
Technical Skills:
- Deep expertise in Computer Science fundamentals, operating systems, data structures, algorithms, and hardware architecture.
- Advanced knowledge of metadata synchronisation, cache coherence, and consensus/consistency protocols (e. g., Paxos, Raft, lease management) in distributed environments.
- Strong expertise in Linux kernel design principles, specifically for I/O and networking subsystems, NUMA architectures, and PCIe topologies.
- Expert-level proficiency in C or C++ for low-level systems software development.
- High proficiency in Python, Go, or Linux scripting for automated testing, system tooling, and performance analysis.
- Extensive knowledge of distributed and cloud-scale storage architectures and protocols (e. g., Ceph, Lustre, NFSv4, S3, RDMA / NVMe-oF).
- Mastery of modern development toolchains and AI-assisted coding technologies (e. g., VSCode, GitHub Copilot).
- Deep experience with white-box profiling, performance diagnostics, and system tools (e. g., SystemTap, Valgrind, GDB, or advanced compiler flags).