Key Responsibilities:
- Develop, maintain, and implement Java-based components, applications, and frameworks.
- Lead the design and architecture of Java-based solutions.
- Collaborate with developers, designers, and system administrators to ensure seamless integration of project components.
- Troubleshoot and resolve technical issues related to Java applications.
- Develop and maintain comprehensive software documentation.
- Provide technical guidance and mentorship to junior developers.
- Stay current with the latest Java technologies and industry trends.
- Optimize existing code for enhanced performance.
- Analyze and refactor existing code as needed.
- Participate in code reviews and provide constructive feedback.
Required Qualifications:
- Minimum 5 years of experience as a core Java developer.
- Minimum 5 years of experience in developing, maintaining, and supporting software applications using Java/J2EE, Spring framework, and related technologies.
- Strong hands-on experience with Java and J2EE technologies, including proficiency in Java 8 and above.
Preferred Qualifications:
- Proficiency in Collections and Multi-Threading concepts.
- Experience with Spring Boot.
- Familiarity with UI technologies such as Angular and React.
- Hands-on experience developing and implementing RESTful Java-based web services.
- Experience building scalable and distributed microservices.
- Knowledge of open-source tools and frameworks including Spring, Hibernate, and Spring JPA.
- Strong understanding of data structures and algorithms.
- Familiarity with Agile software development methodologies.
- Experience with build and development tools such as Gradle and Maven.
- Proficiency in using Git for version control.
- Experience working in Linux/Unix environments.
- Excellent problem-solving and communication skills.
- Solid understanding of SQL and relational databases