Java Developer
Job Description
Rosebank - Johannesburg, 2196 ZA (Primary)
Job TypePermanent
DescriptionPayInc is a purpose-driven payments provider building on over 50 years of trusted history in South Africa's payments ecosystem. Our mission is to connect people, businesses, and economies through secure, efficient and inclusive digital payments infrastructure and be a catalyst for financial inclusion and economic growth. From EFTs and cards to PayShap, PayInc provides the backbone that enables money to move safely across the economy. At our core, we exist to make great connections, empowering participation, enabling growth, and ensuring no one is left behind.
PURPOSEThe main purpose of the Java Developer is to analyze technical specifications and design/develop applications based on result of all analysis for internal and external stakeholders and in alignment with strategic objectives and client requirements.
You will engage with the following stakeholders:- Internal and external stakeholders
- Regulatory bodies
- Build, unit testing and debugging solutions
- Create, document and implement unit test plans and scripts
- Create and maintain technical documentation using defined templates
- Interface with and assist testing and operations departments
- Ensure Quality assurance is conducted on code developed
- Interpret written business requirements and technical specifications in order to design and code solutions
- Verify that system meets performance criteria
- Perform maintenance programming to rectify identified defects
- Provide first line of support for the live systems
- Be able to provide feedback to the incident committee
- IT Diploma or BSc Computer Science Degree
- Microsoft Office suite
- Eclipse, NetBeans or similar
- Working knowledge of Linux and Windows OS's
- Java Application Servers such as JBoss, Wildfly and WebSphere
- RDBMS incl Oracle & MySQL
- Build tools such as Ant, Maven, & Gradle
- Continuous Integration tools such as Hudson & Jenkins
- Code Versioning Tools such as Git, Bitbucket & SVN
- Issue tracking tools such as SpiraTeam, Bugtracker & MantisBT
- Working Knowledge of Springboot, XML/XSD, Web services, Micro services, AWS
- Minimum 5 years' experience in Java Developing in a J2EE environment
- Hands-on experience in designing and developing applications using Java EE platforms
- Object Oriented analysis and design using common design patterns
- Profound insight of Java and JEE internals (Classloading, Memory Management, Transaction management, etc.)
- Excellent knowledge of Relational Databases, SQL and ORM technologies (JPA2, Hibernate, JDBC)
- Experience in the Spring Framework
- Experience in developing web applications using at least one popular web framework (JSF, Wicket, GWT, Spring MVC, Angular)
- Experience with test-driven development
- Creating database schemas that represent and support business processes
- Knack for writing clean, readable Java code
- Basic understanding of JVM, its limitations, weaknesses, and workarounds
- Implementing automated testing platforms and unit tests
About This Role
Career insights for Computer Programmers positions