Company:
FNB South Africa
Industry: Banking / Financial Services
Deadline: Sep 26, 2025
Job Type: Full Time
Qualification: Bachelors
Experience: 10 years
Province: Gauteng
City: Johannesburg
Field: ICT / Computer
Job Description
- To provide expert advice and support in practice formulation and associated best practice improvements
- Responsible for leading and developing a team of technical resources that provide operational project and technical support
Role summary
- Own the design, delivery, and operational excellence of enterprise-grade Java/Spring applcations. Set technical vision, lead cross-team initiatives, and ensure our systems are secure, scalable, observable, and easy to evolve.
Key outcomes
- Deliver resilient, performant APIs and event-driven services that meet security, compliance, and scalability standards.
- Help establish and enforce engineering standards: clean architecture, testing, CI/CD, observability.
- Mentor and grow engineers (incl. seniors), lead code/design reviews, and run calibrated technical interviews.
- Align engineering delivery with business goals, own production service health.
Experience & qualifications
- 10+ years building and operating enterprise-grade Java systems at scale.
- Track record designing enterprise platforms, APIs, and microservices ecosystems.
- Demonstrated authority in Java/Spring with design oversight across teams.
Core technical expertise
- Java mastery: Advanced OOP, collections, streams, exceptions, lambdas; deep knowledge of concurrency and memory management, performance tuning, and production troubleshooting.
- Spring ecosystem (expert): Spring Boot, Spring Security (OAuth2, JWT, CSRF, RBAC), Spring Data JPA, Spring AOP; robust exception handling; profiles/config; modular, reusable components.
- Microservices & integration: Spring Cloud (Config, Eureka, Gateway), service discovery, API gateways, inter-service communication; resilience patterns (retry/timeout/circuit breakers with Resilience4j); REST clients; asynchronous flows with MQ/events; versioned REST APIs with OpenAPI/Swagger.
Data design:
- Schema design and evolution, transactional integrity, and JPA query optimization.
- Architecture & patterns: DDD, clean architecture, domain events, proper abstraction/boundaries; secure coding practices.
Testing:
- Unit & integration tests with JUnit, Mockito, Testcontainers; high-value test strategy and coverage; CI test gating.
Observability & ops:
- End-to-end tracing, metrics, logs; Prometheus/Grafana, ELK (or equivalent); SLOs/error budgets; Post-incident reviews and reliability improvements.
- DevOps & tooling
- CI/CD (advanced): Bamboo, BitBucket; pipeline design, gated quality checks, Maven automation.
- Containers & orchestration: Docker (images, Dockerfiles, docker-compose); Kubernetes(development focus) (preferred/expected at this level)—deployments, config/secret mgmt, ingress.
- Source control: Strong Git practices—branching strategies, PR workflows, code ownership.
- Monitoring & logging: ELK/EFK, Prometheus, Grafana (or equivalents).
Security & compliance
- Spring Security end-to-end (authn/authz), token management, service-to-service trust.
- Secrets management, perimeter and app-level security, least-privilege access.
- OWASP-aligned secure coding, dependency and image scanning, SAST/DAST integration in CI.
Leadership & collaboration
- Proven team leadership: mentoring, coaching, performance reviews, and hiring/interviewing.
- Deep code/design reviews; owns service health and operational readiness.
- Excellent communication and stakeholder management; translates business needs into scalable designs.
- Agile delivery (Scrum/Kanban): sprint planning, backlog grooming, release management.
- Drives cross-team initiatives, platform migrations and re-desing efforts;
- Champions knowledge-sharing (talks/workshops); elevates engineering culture.
End Date: September 20, 2025