Lead Software Engineer
epam
Job Description
-
Design, develop, and maintain applications using Java (Spring Boot and Microservices)
-
Take ownership of features from concept to deployment, ensuring high performance and scalability
-
Participate in all phases of the software development lifecycle — from analysis and design to testing and release
-
Write clean, testable, reusable code, and conduct thorough code reviews to ensure high-quality standards
-
Troubleshoot and resolve backend or frontend issues across various environments
-
Build and consume RESTful APIs for seamless frontend-backend integration
-
Optimize application performance on the backend (API latency, database queries)
-
Contribute to CI/CD pipelines
-
Work effectively in Agile/Scrum teams, actively participating in sprint planning, daily stand-ups, and retrospectives
Requirements
-
Total 8+ years of development work experience
-
8+ years of professional experience in full-stack development using Java (Spring Boot) and Azure
-
Hands-on development experience with Java and Spring Framework
-
Good knowledge of APIs and microservices architecture
-
Strong proficiency in: Java 17, Spring Boot 3.1.2, Spring Framework 6.0.7, Hibernate, RESTful API design, and modular frontend architecture
-
Experience in implementing CI/CD pipelines (Azure Pipeline, Jenkins, GitLab CI)
-
Good understanding of microservices and event-driven architecture
-
Working knowledge of cloud environments, especially Azure (e.g., Azure Data Factory, Databricks, Azure Kubernetes Service (AKS), Azure Functions (serverless))
-
Strong debugging and troubleshooting skills across the stack
-
Ability to work collaboratively in Agile/Scrum teams and communicate effectively
-
English proficiency at a B2 level to ensure effective communication and documentation
-