Job Summary
We are seeking a Full Stack Engineer to design, develop, and maintain secure, high-performance applications using Java, Python, Spring Boot, microservices, and cloud-native technologies. The ideal candidate will have 10+ years of hands-on software engineering experience, strong expertise in distributed systems and event-driven architecture, and extensive experience with AWS services, RESTful APIs, containerized and serverless architectures, databases, automated testing, and DevOps practices. The role also requires experience with AI-assisted development tools, effective collaboration across distributed teams, and the ability to translate business requirements into reliable technical solutions.
Key Responsibilities
• Design, develop, and maintain scalable applications using Java, Python, Spring Boot, microservices, and distributed systems architectures.
• Build and maintain event-driven applications and secure, high-performance RESTful APIs.
• Develop cloud-based solutions using AWS services, including SQS, SNS, Lambda, ECS/EKS, S3, RDS/PostgreSQL, DynamoDB, and CloudFormation.
• Implement and support event streaming and messaging solutions using Apache Kafka.
• Build, deploy, and maintain containerized and serverless applications using Docker and Kubernetes.
• Design and optimize relational and NoSQL databases, including data modeling and data access patterns.
• Apply object-oriented design principles, design patterns, and software engineering best practices.
• Develop and maintain automated tests using test-driven development (TDD), domain-driven design (DDD) principles, and frameworks such as JUnit and Mockito.
• Support CI/CD pipelines, source control, and build automation using Git, Maven, and Gradle.
• Leverage GitHub Copilot and other AI-assisted software development tools to improve productivity, code quality, and development efficiency.
• Collaborate with cross-functional and distributed teams to interpret business requirements, manage priorities, and deliver software solutions.
• Participate in Agile development workflows and continuously improve engineering practices.
Required Qualifications
• 10+ years of hands-on software engineering experience.
• Strong proficiency in Java and Python, with 10+ years of Java experience.
• Extensive experience with Spring Boot, microservices, distributed systems, and event-driven architecture.
• Strong understanding of object-oriented design principles and design patterns.
• Demonstrated experience developing secure, high-performance RESTful APIs.
• Hands-on experience with AWS services, including SQS, SNS, Lambda, ECS/EKS, S3, RDS/PostgreSQL, DynamoDB, and CloudFormation.
• Experience with Apache Kafka and event-driven messaging systems.
• Experience with Docker, Kubernetes, and containerized and serverless architectures.
• Strong knowledge of relational and NoSQL databases, including data modeling.
• Experience with automated testing, TDD/DDD practices, JUnit, and Mockito.
• Understanding of DevOps practices, CI/CD pipelines, Git, Maven/Gradle, and Agile workflows.
• Experience using GitHub Copilot and AI-assisted software development tools.
• Strong analytical, prioritization, communication, and collaboration skills, with the ability to interpret business requirements and work effectively across distributed teams.
• Demonstrated commitment to continuous learning and modern software engineering practices.