Quickly maturing startup seeking like-minded Sr. Software Engineer in Network Automation! PacketFabric is redefining the carrier network to software-as-a-service. The technical team is a small, talented, and close knit-group. We need some specialty software engineering help to make business operations flow smoothly.
What PacketFabric Offers
- The chance to disrupt the entrenched Internet infrastructure industry.
- A supportive and optimistic team that likes to learn from each other.
- A product development pipeline that’s always pushing new features and enhancing the quality of existing products.
- The opportunity to work with many different technologies.
- The opportunity to work with lots of open source technology.
- A small company culture.
- A flat reporting structure.
- Outstanding health, dental, and 401(k) for US residents.
What PacketFabric Doesn’t Offer
- Lack of direction: we maintain a clear roadmap and product pipeline.
- Pre-meetings: we don’t hold meetings to plan other meetings.
- A commute: no hours wasted in megaregion rush hour traffic.
- A dress code: a robe and slippers is acceptable attire any day of the week.
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:
- Work with the network architects to automate router provisioning and upgrades across thousands of network devices, taking into account all sorts of annoying things and edge cases
- Develop tools for network capacity planning, by working closely with network engineering, infrastructure, and procurement
- Work on streamlining the maintenance and outage process, by getting things like many many ugly vendor emails into an orderly database
- Write API’s and tools to manage and maintain the network overall
- 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 handling orchestration tools 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
- A solid understanding of OO programming paradigms.
- A ridiculous amount of experience working in environments to automate complex tasks, especially with real world equipment
- Experience with orchestration tools like Ansible and Jenkins
- Good familiarity with basic network protocols including MPLS and BGP.
- Never being afraid to venture boldly where none have gone before, and develop code where there are no previous libraries to draw from
- 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.
- Previous work with netconf interactions to Cisco and Juniper hardware, other router APIs, open source configuration tools, or writing your own scripts for configuration
- A huge plus for previous work in large scale networks