Senior Software Engineer
Core
Design and implement features in distributed environments using data to guide and measure success, while debugging and mitigating incidents in live production.
Role type
Senior Software Engineer (High-Performance Computing & Distributed Systems)
Builds
High-performance computing systems, parallel/distributed systems, and Machine Learning/Deep Learning systems.
Domain
High-performance computing, distributed systems, and machine learning.
Deliverable
production ML models | product features | infrastructure
Required skills
C, C++, C#, Java, JavaScript, Python, cache/memory optimization, high-performance GPU programming, compiler-based optimization, fine-grained parallel library and runtime, communication optimization, network architecture design, network programming, approximate nearest neighborhood search, performance analysis and optimization for CPUs and GPUs, software-hardware codesign
Preferred skills
Experience in open-source projects or production systems for HPC or distributed systems
Technologies
C, C++, C#, Java, JavaScript, Python
Responsibilities
Design and implement features in a distributed environment using data to guide and measure success; Debug and mitigate incidents in live production environments; Participate in regular team scrums and communicate regularly and clearly with team members and leads
Seniority
Senior, hands-on IC
