JMR Software

Java Software Engineer

Java Engineer Role Profile

We are seeking a highly skilled and experienced Java Engineer to join a dynamic development team. In this role, you will be responsible for designing, developing, and maintaining complex Java-based applications and services. You will also collaborate with cross-functional teams to implement high-quality, scalable, and efficient solutions. The ideal candidate has a strong understanding of Java and related technologies, along with a passion for writing clean, maintainable code and solving complex problems.

Responsibilities

  • Architect, design, and implement high-performance, scalable, and maintainable Java applications and services.
  • Write clean, efficient, and testable code following best practices. Refactor existing code and ensure proper documentation.
  • Work closely with product managers, and other engineers to deliver high-quality software solutions. Participate in code reviews and provide constructive feedback to peers.
  • Mentor junior and mid-level developers, promoting best practices in software development, code quality, and engineering standards.
  • Analyse and improve application performance, identifying bottlenecks and suggesting solutions for scalability and performance improvements.
  • Implement and maintain CI/CD pipelines, ensuring smooth and efficient deployments.
  • Investigate complex production issues, perform root-cause analysis, and implement effective solutions.
  • Participate in Agile ceremonies (standups, sprint planning, retrospectives), ensuring timely and efficient delivery of features

Requisite Experience, Education and/ or Skills

  • Expertise in Java 8 and later versions, including experience with lambdas, streams, and modern Java features.
  • Strong experience with Java-based frameworks like Spring (Spring Boot, Spring Cloud, Spring MVC), Hibernate, and JPA.
  • Experience with RESTful APIs, microservices architecture, and tools like Apache Kafka, RabbitMQ, or similar messaging systems.
  • Proficiency in working with relational databases (e.g., PostgreSQL, MySQL, Oracle) and NoSQL databases (e.g., MongoDB, Cassandra).
  • Solid understanding of unit testing (JUnit, TestNG), integration testing, and test-driven development (TDD).
  • Strong knowledge of Git, branching strategies, and workflows (e.g., GitFlow).
  • Experience with Jenkins, GitLab CI, or similar CI/CD tools. Familiarity with Docker and Kubernetes is a plus.
  • Familiarity with cloud platforms (AWS, Azure, Google Cloud) and deploying Java applications in the cloud environment.
  • Understanding of security best practices in application development (e.g., OAuth, JWT, data encryption).
  • Familiarity with DevOps practices and tools for automated deployments, monitoring, and scaling.

Soft Skills:

  • Strong analytical and problem-solving skills with attention to detail.
  • Excellent communication and collaboration skills, with the ability to work effectively in a team and engage with stakeholders.
  • Ability to take ownership of complex features, from design to deployment.
  • Self-motivated and proactive in staying up-to-date with industry trends and technologies.
  • Ability to work under pressure and meet deadlines in a fast-paced environment.

Experience:

  • 5+ years of experience in Java software development.
  • Proven track record of delivering large-scale, high-performance, and highly available Java applications.
  • Experience with Agile methodologies (Scrum, Kanban) and familiarity with Agile tools (e.g., Jira, Trello).

Preferred Qualifications:

  • Bachelor’s or Master’s degree in Computer Science, Engineering, or a related field.
  • Experience in designing microservices architectures and working with containerized applications (Docker, Kubernetes).
  • Knowledge of front-end technologies (e.g., React, Angular) and how they interact with Java-based backends.
  • Experience with Big Data tools or platforms (e.g., Hadoop, Spark) is a plus.
  • Contributed to open-source projects or have personal projects demonstrating expertise in Java development.

Apply Now

Other Jobs Available

Past Close Positions

Apply Now

Other Jobs Available

Past Close Positions

Scroll to Top