We’re looking for a Network Engineer II to join GitHub’s Network Engineering team. Our mission is to design, build, maintain, and scale GitHub’s peering, transport, exchange, and data center network infrastructure in a multi-site on-premises data center environment, as well as support our efforts around hybrid cloud. This critical infrastructure supports all GitHub products, teams, and users. As GitHub grows, our network engineers need to work cross-functionally, in support of ever-expanding compute footprint, and rapid user growth. In this role, you are responsible for delivering network and software engineering work as a member of our network engineering team, driving capabilities that serve our unique and complex platform. You will work with the team to build and enhance the architecture, configuration, and software frameworks and tools that are used to manage and maintain our network infrastructure. Resolve capacity needs, respond to growth trends, and be a part of our plans for scalability. Handle internal/external support in the area of responsibility. Ensure all engineering work aligns with the security and compliance requirements of the network. Enhance our capabilities to observe and monitor infrastructure to proactively identify and address situations. Participate in projects that drive optimization and enhance system performance, reliability, and scalability. Develop knowledge of latest technologies and best practices in network engineering. Understand how to read and assess common and uncommon errors to create accurate diagnoses and create or direct fixes. Partners with software engineers and other infrastructure teams to troubleshoot issues and optimize network performance.
Responsibilities
- Work with the team to design, build, maintain, and scale components in a large-scale multi-site and heavily peered network.
- Work with automation frameworks, both open-source and commercial, for the automation, management, and observability of the network environment.
- Respond to network capacity needs, growth trends, and plans for scalability and handle internal/external support for network engineering escalations.
- Work with large scale backbone, edge, datacenter, and cloud networks and expand network platform offerings to meet business and developer needs.
- Configuring and troubleshooting routing and switching protocols and encapsulations, including (but not limited to) BGP, ISIS and ISIS-SR, MPLS, VXLAN, DWDM and core network protocols in the TCP/IP family, including IPv4 and IPv6 networks.
- Support a multi-vendor environment (Arista, Juniper, Coriant/Infinera, etc), with hands-on experience with network hardware.
- Participate in a 24×7 on-call rotation, responds to incidents, and partners with other teams to address reliability issues.
Qualifications
Required Qualifications:- Minimum 2 years technical experience in network engineering.
- OR Bachelor’s Degree in Computer Science, Information Technology, or related field AND 1+ years technical experience in network engineering
- OR equivalent experience.
- Minimum 1 years scripting experience in mainstream languages (Python, Bash, etc) or Frameworks (Ansible, Chef, Puppet or Terraform).
- Minimum 1 years experience using general purpose programming languages (e.g., Go, Ruby, or a similar language).
- Minimum 1 years experience with Compute hardware management in the context of datacenter deployments.
- Minimum 1 years experience with network engineering in support of hybrid cloud environments such as AWS direct connect or Azure Expressroute.
- Minimum 1 years experience with Compute platforms and frameworks (Kubernetes, Virtualization platforms – ie VMware, Libvirt/KVM), including Service Mesh and Service Discovery technologies such as Istio or Consul.
GitHub values
- Customer-obsessed
- Ship to learn
- Growth mindset
- Own the outcome
- Better together
- Diverse and inclusive
Manager fundamentals
- Model
- Coach
- Care
Leadership principles
- Create clarity
- Generate energy
- Deliver success