As a Sr. Software Engineer in Network Automation, you should definitely be the type that appreciates diversity in your day, and challenges outside of your comfort level! A typical day in the life of a PacketFabric network automation engineer might include these types of activities:
- Write API’s and tools to manage and maintain the network overall
- Write code to add a new features, functionality or unit tests to existing backend tools
- Develop tools for network provisioning, by working closely with network engineering, infrastructure, and the product dev team
- Develop tools for network capacity planning, by working closely with network engineering, infrastructure, and procurement
- Research and implement additional ideas you may have to improve the product/platform
Skills & Requirements
The right candidates will have an extreme abundance of hard core programming skills and be extremely well versed in various network protocols and network equipment. They will be comfortable automate complex tasks and dealing with frustrating large data sets. You will also know how to sacrifice algorithm elegance, for getting it done on deadline, and know when it is time to refactor some code to improve latency in various situations. You don’t even need to be reminded of safe/secure programming practices, because things as simple as session security are inherent to your nature. More specifics include:
- Extensive experience with Python in large applications developed in a team environment
- Expert unit tester
- Experience in large scale distributed systems
- Extensive experience with the HTTP protocol and developing and using RESTful APIs
- A solid understanding of OO programming paradigms.
- Experience with a message queue system like RabbitMQ or Kafka
- Experience using NoSQL data stores like Redis
- Be completely at home on any *nix command line and building your own tools
- Very comfortable using Git in a team environment (i.e. pull-requests, branch management, rebasing).
- Experience working in an environment leveraging remote communication collaboration tools like Slack, Zoom etc.
- Never being afraid to venture boldly where none have gone before, and develop code where there are no previous libraries to draw from
- A huge plus for previous work in large scale networks
- A huge plus for actually doing any router/switch configuration or infrastructure automation
- Previous exposure to layer 2/3 networking protocols and concepts such as IPv4/6, VLANs, VPNs, BGP, etc.
- Any experience interacting with physical world equipment – industrial, medical, etc.
- Previous work with netconf interactions to Cisco and Juniper hardware, other router APIs, open source configuration tools, or writing your own scripts for configuration