Must Have Skills
1. Expert-level knowledge of Java, J2EE, Spring, Spring Boot, and enterprise application development
2. Strong understanding of software architecture patterns and design principles
3. Proficiency in RESTful and SOAP web services development
4. Advanced experience with ORM frameworks (e.g., Hibernate, JPA)
5. Expertise in application servers (e.g., Tomcat, JBoss, WebSphere)
6. Solid understanding of microservices architecture
7. Proficiency in build tools (e.g., Maven, Gradle) and version control systems (e.g., Git)
8. Experience with CI/CD tools and practices
9. Strong knowledge of database technologies (SQL and NoSQL)
10. Familiarity with cloud platforms, preferably AWS or Azure
Good to Have Skills
1. Experience with front-end technologies (e.g., JavaScript, Angular, React)
2. Knowledge of containerization and orchestration tools (Docker, Kubernetes)
3. Understanding of DevOps practices
Key Responsibilities
1. Lead the design, implementation, and management of Java/J2EE-based enterprise applications
2. Oversee the development and maintenance of Java-based services and applications
3. Collaborate with business stakeholders to understand requirements and translate them into technical solutions
4. Manage and prioritize development backlog items, coordinating with both onsite and offshore team members
5. Conduct and lead technical discussions focusing on software architecture, design, and development strategies
6. Mentor and lead a team of Java developers, fostering their growth and ensuring high-quality deliverables
7. Implement and maintain coding standards, best practices, and architectural guidelines
8. Oversee performance monitoring, optimization, and troubleshooting of Java applications
9. Ensure application security and compliance with industry standards and regulations
10. Stay updated with the latest trends in Java ecosystem and recommend improvements to existing systems
11. Provide technical guidance and support for production issues, including 24/7 support when required