Senior Java Engineer

Avenga
1 month ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior

Job location

Tech stack

Java
Automation of Tests
Unit Testing
Azure
Software Quality
Code Review
Continuous Integration
Relational Databases
Software Debugging
Distributed Systems
Java Virtual Machine (JVM)
JUnit
OAuth
Software Engineering
Google Cloud Platform
Spock
Event Driven Architecture
Integration Tests
Kubernetes
Information Technology
REST
Docker
Microservices

Job description

  • Identify, prioritize, and execute tasks in the software development life cycle

  • Develop tools and applications with clean, maintainable, and secure code and guide the rest of the team in doing so

  • Demonstrate excellent RDBMS skills (design, implementation, migration) working with large amounts of data in production systems

  • Conduct code reviews and provide feedback to help the team keep the code quality high

  • Review and debug code

  • Implement REST APIs

  • Deploy and maintain dev & production systems

  • Apply best practices in software engineering

  • Write Unit tests

Requirements

  • University-level degree (at postgraduate level is a plus) in Computer Science, Information Technology, or a relevant field of study

  • 5+ years of proven working experience with at least one Java framework (preferably Spring 4+) and ORM framework

  • Excellent RDBMS skills (design, implementation, migration) working with large amounts of data in production systems.

  • Experience in implementing REST APIs.

  • Excellent understanding of concurrency in Java

  • Understanding of distributed computing principles and challenges.

  • Understanding of how to write clean, maintainable, and secure code as well as guiding the rest of the team in doing so.

  • Experience in implementing REST APIs.

  • Experience with OAUTH

  • Experience deploying and maintaining production systems

  • A strong drive to follow and apply best practices in software engineering

  • Experience in Unit tests using JUnit or Spock

  • Good understanding of Docker.

  • Familiarity with Microservice architecture

  • A strong drive to follow and apply best practices in software engineering

  • Excellent oral and written communication skills

  • Excellent presentation skills

  • Excellent command of English language

  • Proficient in Java and RDBMS

Nice-to-have skills:

  • Experience with K8S
  • Experience with at least one of the major cloud providers (ie AWS, GCE, Azure)
  • Experience in Automated testing (functional tests and integration tests) and CI / CD.
  • Experience with JVM languages other than Java
  • Demonstrated ability to write Unit tests using JUnit or Spock
  • Good understanding of front-end technologies and frameworks
  • Event-driven architecture

Apply for this position