Java Developer Job Description Template

We are looking for a highly skilled programmer with a passion for developing cloud native applications and enterprise integration systems. As a Java Developer, you will design and develop fault-tolerant and highly available APIs, large-scale distributed computing systems, networking and security systems, and big data pipelines and features. This role will also analyze application features, business objectives, and user requirements to recommend improvements to current Java-based systems and compile detailed technical documentation. 

Typical Duties and Responsibilities

  • Design and implement Java-based applications based on business needs and user requirements
  • Design and code modifications for various workforce management assets
  • Utilize industry-recognized testing frameworks to test software
  • Participate in code reviews and daily scrum meetings
  • Create and maintain pipelines to deploy infrastructure and apps globally
  • Work with internal and external teams to make the necessary platform improvements
  • Help with best practices for landing and ingestion strategy
  • Assist in performance tweaking for development processes 
  • Test and debug modifications 
  • Release modifications to production in accordance with the team’s priority list
  • Engage in a cycle of production support duties that includes pager duties
  • Update and maintain the relevant documentation for deployment, supportability, deployment adjustments, and design changes

Education

  • Bachelor’s degree in computer science or a related field

Required Skills and Experience

  • 3+ years of experience developing Java-based cloud native applications
  • Knowledge of creating highly scalable, distributed, and loosely linked systems
  • Experience with SQL or NoSQL for data modeling
  • Knowledge of data modeling and system design 
  • Knowledge of design patterns, data structures, algorithms, and object-oriented programming
  • Knowledge of agile development, test driven development, and release management techniques for software
  • Experience with Java testing (JUnit, Mockito)
  • Working knowledge of Spring Boot 2.x, REST, and Spring Batch

Preferred Qualifications

  • Knowledge of HTML, CSS, and JavaScript
  • Familiarity with concurrency, resilience, and caching
  • Knowledge of stream-processing platforms such as Kafka or Azure Event Hub
  • Knowledge of Maven or Gradle
  • Knowledge of SQL Server, Azure SQL, or Cosmos DB
  • Knowledge of the Azure Rest APIs or the Azure CLI
Contact us

Recruit with Nexus IT Group