Senior Software Engineer (Backend - Java/Spring)
Summary
Senior backend engineer at a financial services technology firm in Rustenburg, South Africa, designing and maintaining scalable Java/Spring Boot services and APIs for high-volume financial transaction systems, working with relational databases (Oracle, PostgreSQL) and optionally NoSQL stores and message queues.
About the Role
Our client, a prominent financial services technology firm, is seeking a highly skilled Senior Software Engineer with a strong focus on backend development to join their team in Rustenburg, North West . This role is crucial for designing, developing, and maintaining robust, scalable, and high-performance financial systems. You will be working with a talented team of engineers on complex projects, contributing to the evolution of our core platforms. The ideal candidate will possess a deep understanding of Java and the Spring framework, coupled with a passion for writing clean, efficient code and a commitment to delivering high-quality software solutions. This is an excellent opportunity for an experienced engineer to make a significant impact within a reputable organization.
Key Responsibilities
- Design, develop, and implement robust backend services and APIs using Java and the Spring Boot framework.
- Collaborate with architects, product managers, and other engineers to define software requirements and technical designs.
- Write clean, maintainable, well-tested, and efficient code adhering to best practices.
- Develop and integrate with various data sources, including relational databases (e.g., Oracle, PostgreSQL) and NoSQL databases.
- Participate in code reviews, providing constructive feedback to peers and ensuring code quality.
- Troubleshoot, debug, and resolve software defects and production issues.
- Optimize application performance and scalability for high-volume transaction processing.
- Contribute to the continuous improvement of development processes and tools.
- Mentor junior engineers and share technical knowledge within the team.
- Ensure the security and integrity of financial data handled by the applications.
Requirements
- Proven experience as a Senior Software Engineer with a strong focus on backend development.
- Extensive experience with Java and the Spring Framework (Spring Boot, Spring MVC, Spring Data).
- Proficiency in developing RESTful web services.
- Strong experience with relational databases (e.g., Oracle, MySQL, PostgreSQL) and SQL.
- Familiarity with NoSQL databases is a plus.
- Experience with message queues (e.g., Kafka, RabbitMQ) is desirable.
- Understanding of microservices architecture.
- Experience with build tools (e.g., Maven, Gradle) and version control systems (e.g., Git).
- Excellent problem-solving and analytical skills.
- Strong communication and teamwork abilities.
- Bachelor's degree in Computer Science, Engineering, or a related field, or equivalent work experience.
Benefits
- Our client offers a competitive salary, comprehensive medical aid and retirement fund benefits, and performance-based bonuses.
- Employees will enjoy a dynamic work environment in our Rustenburg, North West offices, with opportunities for professional growth and development through training programs and conference attendance.
- We believe in fostering a culture of innovation and collaboration, providing the resources and support necessary for our team members to excel.
- This role presents a significant opportunity to advance your career within the financial technology sector.