A recruitment firm in South Africa is seeking a Senior Software Engineer to enhance and maintain software systems. The ideal candidate will develop enterprise applications, troubleshoot issues, and embrace team collaboration. A Bachelor's degree in Computer Science or related field is required, along with proven experience in Java and cloud services. This is a permanent position based in Pretoria with a market-related salary.
Qualifications
Experience with SOA and micro-services architecture is advantageous.
Proven experience in delivering Java applications.
Experience managing REST and SOAP APIs, including backend integrations.
Experience with cloud services advantageous.
Linux/Unix deployment and database design experience.
Responsibilities
Develop and maintain software systems using engineering principles.
Troubleshoot and resolve issues across systems and platforms.
Collaborate effectively within a team environment.
Troubleshoot issues across multiple systems and platforms.
Analyse and optimise code for performance and reliability.
Support architecture discussions with engineers and architects.
Manage multiple priorities in a fast-paced environment.
Share knowledge and promote quality code and collaboration.
Mentor junior engineers and foster learning across teams.
Stay updated with best practices and new technologies.
Skills
Problem-solving
Collaboration
Analytical skills
Debugging
Adaptability
Communication with non-technical stakeholders
Microservices
PostgreSQL
Oracle
REST API
SOAP API
Linux/Unix
Git
Subversion
Education
Bachelor's degree in Computer Science or related field
Tools
Java
Spring
Maven
PostgreSQL
Oracle
AngularJS
SOAP
REST
Subversion
GIT
Linux/Unix
Job description
Senior Software Engineer
Our Client in Pretoria is seeking a SENIOR SOFTWARE ENGINEER to join their team in Pretoria.
Responsibilities
Develop, enhance and maintain software systems using Software Engineering practices and principles
Work with a team to design and implement enterprise and web applications
Write efficient, reliable and maintainable code, whether implementing architectural improvements, user-facing features or fixing bugs
Troubleshoot and resolve issues, problems and errors encountered across various systems/platforms
Analyse and optimise application code for efficiency, reliability and performance
Understand system architecture design and assisting architects and developers
Work with multiple competing priorities in a fast-paced environment
Embrace a highly collaborative team approach that rewards quality code and effective communication
Operate as a resource to less experienced Software Engineer/Developers, providing an open learning environment for cross-team knowledge sharing
Stay current with the latest development best practices and technologies
Abilities
Highly creative problem solver with excellent collaboration and communication skills
Effective analytical ability, debugging and troubleshooting skills
Ability to learn and adapt to unfamiliar technologies, both open-source and proprietary
Ability to clearly communicate with non-technical stakeholders
Ability to juggle multiple projects
Qualifications
Good SOA and micro-services architecture experience will be advantageous (Oracle OSB is currently used on a SOA project)
Experience with open-source Java technologies such as Spring, Maven
Experience with Java Script and Java Script frameworks such as AngularJ
Experience with PostgreSQL and Oracle databases
Experience with Telecommunications environments and integration with network elements advantageous
Required Education
Bachelor's degree, preferably in Computer Science or related field, OR related experience
Experience
Proven experience in delivering Java Standard Edition and Java Enterprise Edition applications
Proven multithreading and concurrency skills highly advantageous
Extensive experience in producing, consuming and managing SOAP, REST and other HTTP APIs, including authentication, message queues and back-end service integrations
Experience with cloud services will be advantageous
Proven experience in developing and deploying on a Linux/Unix environment
Proven experience with designing and implementing databases
Experience using version control in a collaborative environment, specifically Subversion and GIT
Experience in agile development methodologies
Good understanding of system architecture and service deployment in a 24/7 environment
Additional Information
Head office in Pretoria; project work at several client locations in Gauteng