Mexico
We are seeking an experienced Lead Java Developer to join our dynamic team and play a leading role in designing, developing, and optimizing robust Java applications.
You will collaborate with cross-functional teams to deliver high-quality solutions that address complex business challenges.
Responsibilities
- Design, develop, and maintain scalable and high-performance Java-based applications
- Collaborate with cross-functional teams to define, design, and implement innovative features
- Write clean, efficient, and testable code using best practices in object-oriented programming
- Conduct software analysis, testing, debugging, and performance optimization
- Ensure application designs meet business and technical specifications
- Participate in architectural reviews and contribute to technical decision-making processes
- Prepare production-grade releases, ensuring seamless deployment of software components
- Enhance application functionality by investigating new technologies and proposing improvements
- Develop and maintain reusable Java libraries and frameworks
- Support and troubleshoot technical issues in a timely manner
- Implement automated testing solutions and ensure adherence to proper testing strategies
- Utilize version control systems to track code changes and maintain project integrity
Requirements
- 5+ years of proven experience in software development with a focus on Java, Spring Framework, and test-driven development
- Proficiency in Java with a strong grasp of core concepts, ecosystems, and object-oriented programming principles
- Experience with design and architectural patterns including MVC, JDBC, and RESTful services
- Background in working with both external and embedded databases, as well as creating database schemas supporting business processes
- Solid understanding of microservices architecture and familiarity with cloud platforms such as AWS or Azure
- Knowledge of containerization technologies like Docker and Kubernetes
- Understanding of JVM (Java Virtual Machine), its limitations, weaknesses, and effective workarounds
- Proficiency in build tools like Ant, Maven, or Gradle, and familiarity with CI/CD strategies
- Skills in implementing and maintaining automated testing platforms and unit testing frameworks
Nice to have
- Experience with modern web application frameworks
- Familiarity with concurrency patterns and multithreading in Java
- Background in designing scalable and maintainable software architectures
- Understanding of the class-loading mechanism in Java
- Capability to use and integrate with version control tools such as Git or Azure DevOps
Benefits
- International projects with top brands
- Work with global teams of highly skilled, diverse peers
- Healthcare benefits
- Employee financial programs
- Paid time off and sick leave
- Upskilling, reskilling and certification courses
- Unlimited access to the LinkedIn Learning library and 22,000+ courses
- Global career opportunities
- Volunteer and community involvement opportunities
- EPAM Employee Groups
- Award-winning culture recognized by Glassdoor, Newsweek and LinkedIn