About the role
As a Senior Software Developer on the Network Appliance team, you will work on the platform responsible for managing thousands of distributed network appliances. You'll solve high-impact problems related to performance optimization, automation, and scalability. Expect to contribute to production code within your first month and to continuously influence architectural decisions and product direction.
Responsibilities:
- Write clean, well-structured, and high-performing Python or Golang code.
- Optimize software performance to maximize hardware efficiency.
- Design and maintain automation for deploying, managing, and monitoring network appliances at scale.
- Collaborate with architects and senior leads to shape the team's technical strategy.
- Participate in code reviews, sprint planning, and technical discussions.
- Write and maintain clear, concise documentation.
- Debug system-level issues using Linux tools and diagnostics.
- Develop and improve automated tests and test infrastructure.
- Support ongoing maintenance and bug-fix initiatives.
- Contribute to the virtualisation and cloud migration of Linux code.
Requirements:
- 7+ years of experience writing production-level Python or Go code.
- 5+ years working with app development on Linux.
- Comfortable troubleshooting complex issues with Linux tools and logs.
- Experience with GitHub, Jenkins, and test automation tools.
- Familiar with Docker and containerized application development.
- Demonstrated ability to learn new technologies quickly.
- Solid understanding of TCP/IP networking and application network protocols.
- Passionate about software testing and test-driven development.
- Self-driven, collaborative, and thrives while working with distributed teams.
Bonus Experience:
- Working with cloud platforms like AWS or Azure.
- Performance testing of hardware systems.
- Understanding of open-source IDS software.
- Experience using SystemD to orchestrate application operation in Linux.
- Building or maintaining virtualisation infrastructure.
- Understanding of configuration orchestration tools like Chef and Ansible.
- Developing in highly regulated or security-sensitive environments.