As a trusted partner working in Cloud Services, you will be pushing the organization forward while helping them solve difficult technology problems. You will foster an environment that empowers teams and facilitates the development of your team members, setting everyone up to deliver their best work.
The Network Automation Engineer supports the system infrastructure life cycle in a multi-platform environment by implementing and maintaining an efficient and secure enterprise infrastructure pipeline that offers uninterrupted service for our customers. The Network Automation Engineer provides a holistic skill that addresses the development of required for Continuous Infrastructure Automation for a broad range of solutions to including: compute, storage, databases, networking, analytics, machine learning and artificial intelligence (AI), Internet of Things (IoT), security, and application development, deployment, and management.
The Network Automation Engineer must be willing to continue to master one major technology area (e.g. Route & Switch), yet also be able to apply your engineering skills to develop infrastructure solutions based on customer preference defined through each project engagement. This position is expected to have solid core software engineering experience with a firm grasp of Agile, DevOps, and various pipeline methodologies and technologies to support the continuous evolution of infrastructure composability.
- You understand that leadership is not something you do from far away; you get the importance of taking people with you along the journey and are able to influence and coach those around you to orchestrate team success.
- You understand that not every customer can effectively utilize sophisticated technologies or new tools and prefer to choose solutions that are appropriate for an organization's capability, cost-sensitivity, and risk tolerance. You will influence where required to break status quo.
In this position you will have the following opportunities:
- Treat automation development like software development. Extend the software development principles of continuous integration and continuous delivery to network automation.
- Identify high-value use cases for network automation in our organization. Build those first. Look for low-hanging fruit such as common errors with fixes can be auto-remediated.
- Find the pockets of ad hoc automation and grow them into a formal automation program. Understand that a bottom-up automation initiative that can grow organically are more likely to succeed than top-down, mandate-driven projects.
- Develop or enhance to continually improve network automation and orchestration of automated deployment pipelines.
- Research and investigate new capabilities of cloud patterns, service offerings, and other technologies as the digital world evolves.
- Assist in gathering, clarifying, and documenting requirements of solutions. Work collaboratively with network architects and other engineers to determine potential gaps and solutions.
- Deliver design documents, software programs, scripts, definition and configuration files, and other engineering code centric artifacts as needed to implement orchestrated solutions.
- Provide thought leadership of solutioning efforts, including projects and initiatives. Ensure that all Engineering participants involved in such efforts have clarity of role and expectations in effort.
- Provide training and mentoring to other team members on high-level design, implementation design, coding skills, best practices, and new solution offerings.
- Ensure that all designs are aligned with the organization's standards and policies and that artifacts are reviewed properly on a continual basis.
- Contribute to continual improvement as part of the agile process.
JOB RESPONSIBILITES AND SKILLS
- Takes the initiative to break current solutions down so they can be built back up better than they were before from Day Zero (Zero Touch Provisioning/Replacement) through Day 1 (Operations) and evolutionary into Network Virtualization.
- Programming Experience in Arista Extensible Operating System (EOS), Ruby, Python, and Puppet or Ansible. Also, understanding of object-oriented programming (OOP) and design principles to support the automatically managing hundreds of network assets.
- Moderate Experience in Connectivity (Ethernet, WDM, IPv4 and IPv6); Switching (MPLS, QinQ, etc); Routing (BGP, OSPF, IS-IS); Network Services (DNS, DHCP, NTP, etc.); Software Defined Networking and/or Network Functional Virtualization (NFV).
- Strong Experience in Linux kernel, development, command line, and tooling.
- Strong Experience with a growing maturity in automation tools like Hashicorp Terraform, Ansible, Puppet and/or Chef.
- Moderate Experience in REST API development leveraging virtualization on VMware vSphere and OpenShift, Docker containerization and container orchestration platforms such as Kubernetes to support network virtualization.
- Moderate Experience with application security using PKI, JWT, OAuth, Kerberos and other security technologies for securing APIs and/or integrations with different systems.
- Moderate Experience in CI/CD pipeline development using tools like Jenkins or GitLab.
- Moderate Experience in automation testing, leveraging test-driven development (TDD) techniques and automation tools supporting the lifecycle of code.
- Moderate Experience in source code management and semantic versioning (SMVR) using Git, GitHub or GitLab.
- Moderate Experience with logging and monitoring technologies such as ELK, Splunk, Grafana and Prometheus