Senior Software Engineer (IT)
Summary
Develops and maintains enterprise/web applications using Java/JS tech; troubleshoots, optimizes code, and mentors junior engineers in a fast-paced SOA/telecom environment.
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 assist 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
- Permanent position
Salary
Market related