The Company: Our Client is at the forefront of AI and High-Performance Computing (HPC), delivering scalable and sustainable cloud solutions powered by 100% renewable energy.
Its integrated platform is designed to accelerate AI development and deployment, offering advanced orchestration tools, high-speed GPU clusters, and an optimised AI stack.
It supports a wide range of industries including finance, healthcare, education, and technology, helping organisations unlock new potentials in AI research, data analysis, and cloud computing.
Role Overview: The Principal Cloud Native Software Engineer will lead the development and optimisation of the company's cloud-native solutions, ensuring the scalability, performance, and reliability of its AI and HPC services.
You will play a critical role in designing, developing, and maintaining our cloud-native applications and infrastructure.
A significant portion of your work will involve writing and optimising code in Go, making your expertise in this language essential to the success of our projects.
You will collaborate with cross-functional teams to build scalable, high-performance applications that power the cloud platforms.
Your experience with Kubernetes, cloud infrastructure, and observability tools will be crucial in ensuring that their solutions are robust, efficient, and secure.
Key Responsibilities: Go Development: Design, develop, and maintain cloud-native applications and services, with a primary focus on Go.
Write clean, efficient, and maintainable code, and ensure best practices in Go development are followed across the team.
Optimise existing Go applications to improve performance, scalability, and reliability.
Kubernetes Customisation: Extend and customise Kubernetes by developing custom controllers/operators using Go to meet specific business needs.
Infrastructure Management: Oversee the lifecycle management of both virtual and bare-metal machines within cloud environments, ensuring optimal performance and reliability.
Kubernetes Operations: Manage and maintain Kubernetes clusters, including day 2 operations such as upgrades, scaling, and monitoring.
Observability: Implement and maintain observability tools and practices, including Prometheus and Grafana, to monitor system health and performance.
CI/CD Pipelines: Design and manage CI/CD pipelines, integrating DevOps principles to streamline development and deployment processes.
Linux and Networking: Apply your deep understanding of Linux systems and networking fundamentals to ensure the robustness and security of cloud-native environments.
Collaboration: Work closely with product managers, DevOps engineers, and other software engineers to deliver high-quality cloud-native solutions.
Documentation: Produce and maintain comprehensive documentation for developed software and processes to ensure knowledge sharing and operational excellence.
Experience: 7+ years as a software engineer with a proven track record in cloud-native environments.
5+ years of experience writing Go in a professional setting, with a focus on developing and maintaining cloud-native applications.
3+ years of hands-on experience with Kubernetes, with a strong preference for experience in extending Kubernetes (e.g., writing custom controllers or operators).
Cloud Infrastructure: In-depth experience with cloud infrastructure, including lifecycle management of virtual and bare-metal machines.
Kubernetes Expertise: Proficiency in running and maintaining Kubernetes clusters, including experience with day 2 operations.
Observability Tools: Practical knowledge of observability tools and practices such as Prometheus and Grafana.
CI/CD and DevOps: Strong understanding of CI/CD pipelines and DevOps principles, with hands-on experience in implementing these in production environments.
Linux and Networking: Solid grounding in Linux systems and networking fundamentals.
Problem-Solving: Excellent analytical and problem-solving skills, with the ability to troubleshoot complex systems.
Collaboration: Strong communication skills and the ability to work collaboratively in a fast-paced, dynamic environment.
Preferred Qualifications: Experience with other programming languages and cloud-native tools.
Contributions to open-source projects, particularly in the Kubernetes ecosystem.
Certifications in cloud technologies (e.g., Certified Kubernetes Administrator).