Job Summary
The Senior Software Engineer will design, develop, test, and maintain high-quality, scalable, and production-ready software applications. The role focuses on backend development using Java, cloud-native application development on AWS, and infrastructure automation using Terraform. The engineer will contribute across the full software development lifecycle, work autonomously, troubleshoot existing systems, and provide technical guidance to junior team members.
Key Responsibilities
• Contribute to the full software development lifecycle, including design, development, testing, integration, deployment, and maintenance.
• Design and develop maintainable, extensible, and production-ready backend applications using Java.
• Develop cloud-native applications using AWS services such as Lambda, SQS, and DynamoDB.
• Implement infrastructure-as-code solutions using Terraform.
• Develop applications using Java frameworks such as Spring, Spring Boot, Quarkus, or similar frameworks.
• Implement data persistence and database access using JPA, JDBC, or equivalent technologies.
• Continuously integrate and deliver software components into fully functional software systems.
• Write tested code while complying with coding standards and established software engineering practices.
• Produce technical specifications and evaluate operational feasibility of proposed solutions.
• Facilitate end-to-end user testing with customers and stakeholders.
• Troubleshoot, debug, enhance, and upgrade existing applications and systems.
• Collaborate with engineering teams and stakeholders to understand business requirements and deliver effective technical solutions.
• Provide technical support, guidance, and direction to junior team members.
• Consider security, privacy, performance, scalability, and technology costs when designing and implementing solutions.
Required Qualifications
• Minimum 10 years of software engineering experience.
• Strong backend development experience using Java to build production-ready applications.
• Strong hands-on experience with AWS cloud services, including Lambda, SQS, and DynamoDB.
• Experience developing applications for cloud platforms.
• Hands-on experience with infrastructure-as-code tools such as Terraform.
• Experience with Java frameworks such as Spring, Spring Boot, Quarkus, or similar.
• Experience with Java Persistence API (JPA), JDBC, or equivalent database persistence technologies.
• Strong understanding of software development lifecycle, coding standards, testing, troubleshooting, and production support.
• Ability to work independently with minimal supervision and provide technical guidance to junior team members.
• Strong problem-solving, communication, collaboration, and analytical skills.
Preferred Qualifications
• Experience with Kubernetes for developing, deploying, and orchestrating microservices.
• Experience developing and deploying applications within Docker containers.
• Experience working with multiple programming languages, including Java and Python.
• Strong understanding of application security, privacy, performance, scalability, and reliability concepts.