Minimum qualifications: Bachelor’s degree or equivalent practical experience. 2 years of experience with software development or 1 year of experience with an advanced degree in an industry setting. 2 years of experience with developing large-scale infrastructure, distributed systems or networks, or experience with compute technologies, storage or hardware architecture. Preferred qualifications: Master's degree or PhD in Computer Science or related technical fields. 2 years of experience with data structures and algorithms. Experience with systems programming (C++ preferred) and developing or debugging software in Unix/Linux user-space or kernel environments. Experience with software architecture, engineering productivity, C++, C, Python, network architecture, large-scale distributed systems. Familiarity with building, analyzing, and optimizing networking components and protocols (e.g., Cloud NAT, firewalls, load balancers, TCP/IP, or Software-Defined Networking).