Our client, a retail giant, is looking for a Senior Java Analyst Programmer to join their team in Cape Town. This role is for a technical lead who enjoys analyzing and solving client requests while delivering professional working software, taking pride in the quality of the applications you deliver and maintain.
Responsibilities:
? Understand and analyze user requests
? Design, develop and maintain back end applications
? Design, develop and maintain APIs
? Design and maintain underlying database objects
? Support quality assurance (automated testing and supporting of user testing when required)
? Guide, mentor, and share your experience with your teammates
? Actively participate in code reviews
? Participate during all stages of the software development life-cycle
? Keep improving processes (including application testing, deployment, performance, and monitoring)
? Help with day-to-day queries from clients and IT teams
? Shared production standby responsibilities with rest of team
? Design and develop with support and reusability in mind
Experience and Skills:
? 5 + years experience using Java, preferably the Spring framework (Spring Integration, Spring Data Rest, and Spring Cloud Stream)
? Experience designing, and developing RESTful API’s
? Solid understanding of message brokers (RabbitMQ)
? Experience using relational database technologies (MySQL and/or PostgreSQL)
? Experience using container technology such as Docker
? Experience/knowledgeable of microservice architecture and systems
? Solid understanding of application architecture
? Able to fulfill a technical lead role
? Able to take responsibility and be self motivated
? Able to develop ideas and share them clearly (in non-technical terms when required)
? Able to explain solution trade-offs (in non-technical terms when required)
? Able to work within a team
? Be curious in technology
Not required, but will be an advantage:
? Experience development using Spring Boot, Java 8 (incl working with Streams and Java Generics), JUnit, Maven, Message Queues (AMQP), and JPA/Hibernate
? Experience with database replication technologies (SymmetricDS)
? Experience working with Oracle databases
? Experience development using Python
? Experience using version control systems, such as GitLab
? Familiarity with Continuous Integration tools such as Jenkins
? Familiarity with Google Cloud Platform (GCP) and Google Workspace
? Familiarity with the WSO2 platform
? Familiarity with Angular, and Node.JS
? Exposure to Agile methodologies, such as SCRUM and KANBAN
Desired Skills:
- Senior
- Java
- Analyst