Key Responsibilities:
- Software Development: Design, develop, and implement Java applications and services. Ensure robust, scalable, and high-performance solutions.
- Code Quality: Maintain and enhance code quality through best practices, including continuous integration, code reviews, and testing.
- Technical Leadership: Lead project teams, making architectural decisions and setting coding standards. Mentor junior developers and contribute to their professional growth.
- Problem Solving: Address complex issues involving databases, systems integration, and compatibility across multiple platforms.
- Optimization: Optimize existing systems for speed and scalability, and troubleshoot and debug applications to resolve issues.
- Collaboration: Work closely with other engineers, developers, and stakeholders, including product managers, quality assurance teams, and customer support teams, to gather requirements and deliver solutions.
- Documentation: Create technical documentation for reference and reporting.
Skills Required:
- Proficiency in Java: Strong experience in Java and Java Enterprise Edition (Java EE) environments.
- Knowledge of Web Technologies: Experience with web server technologies such as Apache, Nginx, ISS, etc. Knowledge of HTML, CSS, JavaScript, and XML.
- Framework Familiarity: Deep understanding of frameworks such as Spring, Hibernate, or Struts.
- Database Skills: Proficient in SQL and familiarity with databases like Oracle, MySQL, PostgreSQL, and NoSQL databases such as MongoDB or Cassandra.
- DevOps Experience: Familiarity with DevOps tools such as Jenkins, Maven, Ant, Git, SVN, etc.
- Analytical and Problem-Solving Skills: Excellent analytical abilities with a good problem-solving attitude.
- Communication Skills: Strong interpersonal and communication skills to effectively collaborate with other team members and stakeholders.
Educational Qualifications:
- A bachelor’s degree in Computer Science, Software Engineering, or a related field is typically required. Advanced degrees or specialized certifications in Java or related technologies are a plus.
Work Experience:
- Typically, this role requires at least 5 years of experience in Java development, with demonstrated senior-level expertise in designing and developing complex software systems.