Quickly maturing startup seeking like-minded Sr. Software Engineer! 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 Infrastructure 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 infrastructure automation engineer might include these types of activities:
- Work with the network infrastructure team to automate physical network equipment provisioning with thousands of network devices across multiple geographies and many times zones, taking into account all sorts of annoying things and edge cases
- Develop tools for automating just in time shipping/fulfillment for replacements, inventory tracking, and circuit tracking.
- Work closely with the provisioning team to develop detailed reporting.
- Design and implement improvements to the existing basic asset management system to capture the greatest level of detail.
- Work on streamlining the physical equipment audit process by automating the gathering of information.
- 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 well versed in working in large scale distributed systems that include physical infrastructure. 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
- Familiarity with physical network equipment (Cisco, Juniper) and colocation deployments including various colocation vendors.
- 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 automated asset tracking and shipping systems
- Understanding of layer 1 networking concepts and equipment, such as MUX, AMP, and DWDM
- Previous work with netconf interactions to Cisco and Juniper hardware, other router APIs, open source configuration tools, or writing your own scripts for configuration