Job Purpose
This role will have you joining our Infrastructure Development and Automation team where you will be working on our in-house automation platform, advanced network monitoring tooling, and other internal development projects. You will be exposed to all layers of these tools as well as learning the enterprise SDLC processes at ICE. In time you will help support other teams’ use of these tools and develop new features or improve existing ones.
Responsibilities
- Deep understanding of network device configuration syntax: e.g. Juniper JunOS, Arista EOS, F5 BIG-IP
- Ability to design complex application systems
- Ability to form necessary project-plan to implement designs
- Understanding of what items are necessary to run through small proof-of-concept phases
- Comfort with extensively planning development work before writing a single line of code
- Ability to "manage" the work of other team members
- Gather requirements from relevant business owners
- Keep project stakeholders updated on progress
- Help ensure an orderly release management and SDLC process is followed
- Meet with technologists from other teams to ensure all new software appropriately captures the requirements, uses the best data sources, and does so in a secure manner
- Create and maintain documentation of system components and their operation
- Write unit and integration tests that ensure system reliability
- Help train end-users on the use of any new tooling
- Take ownership of tools and sub-components
Knowledge and Experience
Essential
- 8+ years of development experience
- Computer Science (or related field) degree or equivalent experience
- Proficient software development skills
- Development ability in Python, TypeScript/JavaScript, Go (golang), Java, C
- Ability to use RESTful APIs
- Ability to work on development tasks with little external input
- Comfort with taking ownership of project deliverables
- Knowledge of general network principles and technology in WAN and LAN infrastructures
- Good written and oral communication skills and the ability to work with others on both an ad hoc and project team basis, across organizational boundaries
- Comfort with database technologies and terminology (e.g. ORMs, DB Models, Redis)
- Familiarity with GNU/Linux operating systems
The applicant will receive extra consideration if they have some of the following skills and experience:
- Experience working with JSON, XML, YAML, and proprietary data interchange formats
- Familiarity with a DVCS (e.g. git)
- Familiarity with development dependency management tools (e.g. npm, pip, maven, etc)
- Familiarity with functional and integration testing
- Knowledge of common network automation services (e.g. NETCONF, eAPI, etc)
- Knowledge of Juniper products and Junos OS
- Knowledge of Arista products and EOS
- Knowledge of IT automation tooling (e.g. Ansible, Puppet, Salt)
- Self-organizing and ability to pick up next task independently
The following skills and experience are particularly desirable but are not required for consideration:
- In-depth knowledge of networking protocols and deployments (e.g. BGP, MPLS, OSPF, IS-IS, VLANs, prefix-lists, ACLs, etc)
- In-depth knowledge of infrastructure automation and provisioning pipelines (I.e. CI/CD)
- In-depth knowledge of applications and services offered by ICE/NYSE