You are an experienced software engineer who enjoys solving complex technical problems and taking ownership of systems beyond just writing code.
You are comfortable working independently while collaborating closely with other engineers, architects, product teams, and stakeholders.
You actively participate in architecture discussions, code reviews, technical design, and production troubleshooting. You are willing to challenge existing approaches constructively and introduce improvements that increase engineering quality and business value.
You have a strong understanding of distributed systems and microservices and are comfortable working with cloud technologies, containers, CI/CD, and production systems.
As a senior engineer, you are also expected to mentor others, share knowledge, and help raise engineering standards across the team.
Additional Required Competencies
8+ years of professional experience in backend software development.
Strong hands-on experience developing production-grade applications using Java 11 or higher.
Strong experience with Microservices architecture and distributed systems.
Hands-on experience with Microsoft Azure and cloud-native application development.
Experience with Azure services such as:
Strong hands-on experience with Kubernetes and containerized applications.
Practical experience with JUnit and Test-Driven Development (TDD).
Strong understanding of DevOps practices and complete lifecycle ownership.
Hands-on experience with CI/CD pipelines in production environments.
Strong experience with Git and modern source-control practices.
Experience with certificate lifecycle management, including certificate renewal, rotation, deployment, and security considerations.
Practical experience working in Agile development environments, including Scrum, SAFe, Kanban, or similar methodologies.
Strong understanding of software engineering principles, design patterns, clean code, and SOLID principles.
Good understanding of security concepts relevant to cloud and backend applications.
Strong problem-solving, troubleshooting, and analytical skills.
Excellent written and verbal English communication skills.
Bachelor's or Master's degree in Computer Science, Engineering, or a related technical discipline.
Beneficial Competencies
The following skills and experience would be an advantage:
Python
Golang
Spring / Spring Boot
Maven
Linux / Unix
Experience with AWS or multi-cloud environments.
Experience with cloud security and secure software development practices.
Experience with API security, authentication, authorization, secrets management, and certificate management.
Experience with observability, monitoring, logging, and distributed tracing.
Experience with event-driven architectures and messaging systems.
Experience with performance optimization and scalability engineering.
Experience with infrastructure automation and Infrastructure as Code.
Cloud certifications such as Azure or AWS certifications.
Technical Environment
Languages:
Java 11+, Python / Golang – beneficial
Frameworks:
Spring, Spring Boot, Maven, JUnit
Cloud:
Microsoft Azure, AWS – beneficial
Azure Services:
Azure Functions, Azure VM, Containers, Storage Queues, APIM, Cosmos DB
Container & Platform:
Docker, Kubernetes
DevOps:
CI/CD, Git, production deployments, monitoring, automation
Engineering Practices:
Microservices, TDD, Agile, Scrum, SAFe, DevOps, Secure Software Development
Way of Working
We believe in giving engineers ownership and autonomy while maintaining a strong culture of collaboration and knowledge sharing.
You will work in an Agile environment where engineers are expected to contribute not only to implementation but also to architecture, design, testing, deployment, operations, and continuous improvement.
We value people who:
Take ownership from idea to production.
Think about reliability and security from the beginning.
Balance technical excellence with business value.
Share knowledge and help others grow.
Challenge assumptions constructively.
Continuously learn and experiment with new technologies.
Work effectively with geographically distributed and cross-functional teams.
Take responsibility for the long-term health of the systems they build.