Software Engineer Network Automation (GoPython) (fmd)
Job Summary
- Design and build the orchestration of network changes. This goes beyond a deployment pipeline: it coordinates multi-step operations across devices and systems with pre-change validation staged rollout post-change verification and automatic rollback.
- Write the services and tooling behind it in Go and Python with the tests CI and observability you would expect of any production software.
- Build a test environment (virtual labs config and state checks) that lets us catch a bad change before it reaches a device.
- Extend our source-of-truth and config-generation tooling (NetBox Peering Manager Ansible/Jinja2) so that more of the network is described by data instead of by hand.
- Make the networks state visible: detect drift between intended and running configuration and expose it to the team.
- Take part in code and infrastructure change reviews and raise the software engineering bar of the team.
- Join the on-call rotation after a training period.
- Solid professional experience designing writing and maintaining production software in Go and fluency in Python.
- Experience building CI/CD or deployment systems where a failed rollout has real consequences.
- A habit of testing what you ship and automating what you do twice.
- A working understanding of networking fundamentals (IP routing VLANs what BGP is for). You dont need to be a network engineer; you need to be curious enough to become dangerous.
- Strong written and spoken English and comfort working in a distributed team.
- Automated network devices before (Arista EOS Junos SONiC) through NETCONF gNMI eAPI or similar.
- Used Ansible NetBox or comparable configuration-management and source-of-truth tools at scale.
- Worked with network test or validation tooling (containerlab Batfish pyATS or similar).
- Experience with Linux networking and Kubernetes.
- A problem with real scope and ownership: you build the orchestration not a ticket queue around it.
- Flexible hours and the ability to work remotely.
- A high degree of autonomy and creative freedom.
- A modern work environment with centrally located offices and excellent public transport access.
- Ongoing learning opportunities training and team events.
Required Skills:
A university degree in Supply Chain Management Business Administration Finance Computer Science Electrical Engineering or a related field. Significant experience in large scale hardware deployments and lifecycle management. 3-5 years of professional experience in capacity planning supply chain management or financial planning preferably within the technology or telecommunications sector. A strong commercial and technical understanding of server architecture (compute memory storage) and the data centre environment. Proven analytical and quantitative skills with advanced proficiency in Microsoft Excel and experience with data visualisation tools. Fluency in English is required.