About this role
R
Job Title: Intermediate Developer
Reports to: Practice Head: Java Solutions
ROLE OVERVIEWRolverview
DVT requires the long-term services for an Innovative Intermediate Java Developer with experience in building high performing, scalable, enterprise-grade applications.
You will be part of a talented technology driven software team that works on mission-critical applications. You will be responsible for Java/Java EE application development while providing expertise in the full software development lifecycle, from concept and design to testing.
KNOWLEDGE AND SKILLS
• Full understanding and implementation of the SDLC and design patterns
• Proven hands-on Software Development experience
• Proven working experience in Java development
• Hands on experience in designing and developing applications using Java EE platforms
• Object Oriented analysis and design using common design patterns
• Unit testing, integration and functional testing
• Using version control systems – Git, SVN, TFS
• Understanding of Solution Architecture
• Scrum Master role understanding
• Solutions design and implementation
• Improving the design of existing code
• Keep up to date with technology
• Ability to Multitask
• System design and analysis
• Ability to conceptualise and simplify complex problems
• Ability to read and write specifications
• Good communications skills
COMPETENCIES
competencies
• Strong written and oral communication skills
• Creative eye for details
• Positive attitude
• Able to multitask effectively
• Display excellent time management, task planning and prioritisation skills
• Able to adapt quickly to changing client requirements
• Able to work effectively with minimal supervision
• Java systems development experience using core Java Enterprise edition
• Knowledge of OO design principles and enterprise design patterns.
• Profound insight of Java and JEE internals (Classloading, Memory Management, Transaction management, etc)
• Agile environment
• Experience in developing web applications using at least one popular web framework
• (JSF/Primefaces, AngularJS, Wicket, GWT, Spring MVC)
• Experience with XML/XSD/JAXB and Web Services (Soap & Rest).
• Experience in the Spring Framework, EJB3
• Javascript, CSS and HTML etc
• Excellent knowledge of ORM technologies (JPA, Hibernate)
• Solid working knowledge of Relational Databases, SQL and Data Model
• Experience with Test-Driven Development (TDD)
• Agile/Scrum background experience would be a value add
ATTITUDES
ATTITUDES
• Passion for people
• Work in a team environment
• Delivery focused
• Professionalism (conduct and appearance)
• Show initiative
• Awareness of the environment
• Motivated
• Work to achieve tight deadlines
• Ability to work under pressure
• Enthusiastic and committed
• Develop Java application software
• Assist with the production of technical specifications and designs
• Design and develop high-volume, low-latency applications for mission-critical systems, delivering high-availability and performance
• Contribute in all phases of the development lifecycle
• Write well designed, testable, efficient code
• Ensure designs are in compliance with specifications
• Prepare and produce releases of software components
• Support continuous improvement by investigating alternatives and technologies and presenting these for architectural review
• Collaborate with other team members and stakeholders
QUALIFICATIONS
alQualificationsifications
• Preference: BSc/ BSc Hons/ MSc degree in Computer science, Software engineering or a related field of study
• Matric, A or O levels
• 4 - 5 years’ experience in java software development
• Preferably in a banking, insurance or telecoms industry
• Experience in SDLC methodologies such AGILE (SCRUM)
TO BE SUCCESSFUL IN THIS ROLE, YOU WILL NEED:
• Hands-on experience with Spring Core Framework
• Hands-on experience building RESTFul API using JAX-RS implementations
• Hands-on experience in using JSON, YAML and Swagger
• Strong understanding and experience using Containerization (Docker)
• Working understanding of UI frameworks like Angular or ReactGood
• understanding of NoSQL DBs (MongoDB, Elasticsearch, Hazelcast etc) and Caching
• Hands-on experience in Static Code Analysis (SonarQube, JaCoCo)
• Hands-on experience in implementing Test Driven Development (TDD) using JUnit and Mockito
• Hands-on experience building SOAP API using JAX-WS implementations
• Hands-on experience in defining and building OpenAPI (v3 and above) API contracts
• Hands-on experience with Spring Boot and maven spring starter dependencies