Senior Java Developer

As a Senior Java Developer you are an experienced Java programmer who is responsible for leading the design, development, and maintenance of Java-based applications. You have a strong understanding of object-oriented programming concepts and are proficient in using Java programming language. You work closely with other developers, stakeholders, and end-users to ensure that the final product meets the business and technical requirements.

Key Responsibilities:

  • Lead the design and development of high-performance, scalable, and reliable Java-based applications
  • Participate in the full software development life cycle, including requirements gathering, design, coding, testing, and deployment
  • Collaborate with other developers, stakeholders, and end-users to understand business requirements and translate them into technical solutions
  • Provide mentorship and guidance to junior developers
  • Keep up-to-date with the latest technologies and industry trends in Java development
  • Troubleshoot and debug complex issues in a timely manner
  • Write clean, maintainable, and efficient code
  • Participate in code reviews and ensure that all solutions are aligned to best practices
  • Ensure adherence to project timelines and deliverables

Qualifications:

  • Bachelor’s degree in Computer Science or a related field
  • Strong understanding of object-oriented programming concepts
  • Proficient in Java programming language
  • 7+ years of experience in Java development
  • Experience with Spring and Hibernate frameworks
  • Experience with SQL and RDBMS (Oracle, MySQL, SQL Server)
  • Experience with Agile development methodologies
  • Strong problem-solving skills and ability to think creatively
  • Strong communication skills and ability to work well in a team
  • Experience with Git, Jenkins, and JIRA is a plus.
  • Experience leading a team of developers
  • Experience with microservices, cloud-native development and DevOps practices is a plus
  • Strong understanding of software design patterns, and ability to apply them to solve complex problems
  • Strong ability to work independently with minimal supervision
  • Strong ability to work in a fast-paced, deadline-driven environment
  • Strong analytical and problem-solving skills
  • Experience in software architecture and design is a plus