Senior Java Software Developer
Apply locations: Remote - South Africa
Time type: Full time
Posted on: Posted 2 Days Ago
Job requisition id: R0028223
Senior Software Engineers ensure that all software engineers within the delivery team understand and follow existing IT standards, policies, and procedures. They work closely with other team leaders and development teams when necessary to create software that meets customer requirements and best practices. Senior Software Engineers work with the Java programming language to develop web applications and computer systems. This involves assigning tasks to other team members, designing and testing code, and enhancing development practices. Typically, Senior Software Engineers work as part of our hybrid teams, with other colleagues contributing to designing and developing successful software.
The role includes modernization of the existing banking services platform including the moving existing Glassfish and Payara applications to more modern “dockized” solutions whilst simplifying the implementations and ensuring a high level of quality and performance.
This is a full-time position; additional hours may be required from time to time.
Responsibilities:
- Develop modules of the initial enterprise system plan and work with the development team by coding advanced portions of the modules and delegating routine coding to other Developers.
- Conduct the testing of completed code modules with the help of other developers, fixing code as needed to ensure a smooth system deployment with the intended functionality.
- Plan and execute all deployment of system features and monitor for successful integration, maintaining the system throughout its lifecycle.
- Translate functional specifications into workable project deliverables and stage these according to team capability and capacity.
- Responsible for code review and quality control.
- Provide technical leadership and team support, as well as the ability to impart knowledge to others.
- Accountable and responsible for project delivery.
- Innovative problem solving, goal-oriented, and self-motivated.
- Ensuring continuous professional self-development and the mentoring of other Developers.
- Support continuous improvement by investigating alternatives and technologies and presenting these for architectural reviews.
- Assist with the production of technical specifications and designs.
- Work in accordance with the prevailing delivery methodology as defined by the business.
Work Experience:
- Experience with development of real-time, complex web-based user interfaces.
- Familiar with software development lifecycle (SDLC) as well as software delivery methodologies such as the Agile SCRUM processes.
- Familiarity with Financial systems.
- Familiarity with Accounting concepts is advantageous.
- Transactional knowledge / Full stack experience.
- Strong application architecture design experience.
Required Skills or Knowledge:
- Java JEE and SE.
- Message Queueing Services: i.e. IBM MQ Series.
- Java Application Server experience: Glassfish / Payara / Web Logic.
- RDBMS experience in querying Microsoft SQL Server / Oracle / PostgreSQL / MySQL / MariaDB.
- SOAP/RESTful web services.
- IntelliJ.
- Git.
- Bitbucket.
- Spring / Spring Boot.
- JPA / Hibernate.
- DevOps (CI/CD) – Including tools like Jenkins, TeamCity, Ansible.
- Artifactory.
- Docker.
- Kubernetes.
Advantageous Skills or Knowledge:
- PrimeFaces.
- JUnit.
- EJB.
- React / Angular.
- Jira.
- Rancher.