Progress is an experienced, trusted provider of products designed with customers in mind, so they can develop the applications they need, deploy where and how they want and manage it all safely and securely. We take pride in what we do, always valuing the whole person—at work and in life. Our diverse life experiences enrich our culture because people power progress.
As a Cloud-Native Software Engineer, you will be instrumental in shaping the future of our SaaS offerings. You will work closely with a diverse, cross-functional team to design, develop, and maintain cloud-native applications and services that leverage the full potential of cloud infrastructure.
What you will do:
- Create innovative cloud-native applications and services using languages, frameworks, and technologies optimized for cloud environments, including microservices, containers, and serverless architectures.
- Design and implement scalable, highly available cloud architectures that adhere to industry best practices, ensuring optimal performance and availability.
- Develop compliant RESTful or gRPC APIs to facilitate seamless communication between application components and external systems.
- Execute comprehensive testing strategies, encompassing unit, integration, and end-to-end testing, to guarantee the reliability of cloud-native applications.
- Leverage containerization technologies like Docker and orchestration platforms such as Kubernetes, k3s, and Rancher to efficiently manage and deploy applications at scale.
- Implement test automation and infrastructure as code (IaC) to enhance efficiency and drive automation initiatives.
- Implement best-in-class security measures and mechanisms to safeguard cloud-native applications and sensitive data, including robust identity and access management (IAM).
- Identify and address performance bottlenecks, optimizing cloud-native applications for enhanced efficiency and cost-effectiveness.
- Design applications capable of scaling both horizontally and vertically to handle diverse workloads and traffic patterns.
- Maintain clear, comprehensive documentation of system architecture, processes, and procedures.
- Work closely with cross-functional teams, including DevOps, QA, and product management, to deliver high-quality software products.
- Bachelor's degree in Computer Science, Software Engineering, or related field
- Proven experience in software architecture, design, and development in cloud-native environments.
- Proficiency in programming languages commonly used for cloud-native development (e.g., Python, Go, C#, C, bash).
- Strong knowledge of cloud platforms (Azure, AWS - desirable) and their services.
- Experience with containerization and orchestration tools (Docker, Kubernetes, AKS, k3s).
- Familiarity with database and big data technologies (Cassandra, MongoDB, DB as a Service).
- Proficiency in software change control (Jira, GitLab, GitHub).
- In-depth understanding of microservices architecture and serverless computing.
- Solid grasp of security best practices in the cloud.
- Excellent problem-solving skills and the ability to work independently and in teams.
- Strong communication skills for effective collaboration and documentation.
- Proficiency with Linux OS
- Knowledge of networking and application layer protocols.
- Familiarity with C and bash scripting.
- Experience with Load Balancing
- IT Infrastructure Monitoring (ITIM)
We'd be happy to chat if this sounds like you and fits your experience and career goals. What we offer in return is the opportunity to experience a great company culture with wonderful colleagues to learn from and collaborate with and also to enjoy:
What we offer in return is the opportunity to elevate your game and to also enjoy:
- Generous remuneration package
- Employee Stock Purchase Plan Enrollment
Vacation, Family, and Health
- 25 days paid annual vacation
- Private healthcare and dental care coverage
- Group personal pension plan
- Cycle to work scheme
- Income protection