Senior Software Engineer (Java / Back-End)
Uganda * Full-time
Agent Banking Company
Serve as a senior member of the software development team to design, develop, test, and maintain secure, scalable, high-availability back-end solutions that support ABC’s business objectives. Architect and build Java-based microservices exposed through managed API gateways, and contribute to supporting web applications using JavaScript technologies, deployed through automated CI/CD pipelines on containerised platforms (Docker and Kubernetes/OpenShift), in line with Agile and DevOps practices. Operate with a high degree of independence, take ownership of complex features and critical technical issues, and mentor other engineers while upholding engineering standards, security policies, and regulatory requirements.
Requirements
a) Software Design & Development
• Design, develop, and maintain enterprise back-end services using Java EE and Spring Boot, including RESTful APIs and system integrations, with a strong focus on performance, reliability, and maintainability.
• Design and build microservices following sound microservices architecture principles (clear service boundaries, loose coupling, data ownership), ensuring reliable inter-service communication, resilience (e.g. circuit breakers, retries, timeouts), and performance.
• Design, publish, and manage APIs through API gateways, applying routing, authentication and authorisation, rate limiting, throttling, versioning, and API lifecycle governance.
• Implement integrations with internal and third-party systems, including financial and payment platforms, using synchronous (REST) and asynchronous (messaging and event-driven) patterns.
• Design and optimise data access and persistence layers, including relational and NoSQL databases, caching, transactions, and data consistency across services.
• Provide technical leadership in design discussions, architecture decisions, and effort estimation; translate requirements into well-structured, scalable technical solutions.
• Occasionally build front-end and server-side web applications using JavaScript, ReactJS, Next.js, and Node.js where required to complement back-end services.
• Lead and participate in code reviews, and promote agreed coding standards and best practices.
• Leverage ABC-approved AI-assisted development tools to enhance engineering productivity across coding, testing, documentation, and troubleshooting, while rigorously reviewing and validating all AI-generated output for correctness, security, and quality before adoption.
b) Agile Delivery & Collaboration
• Deliver work in iterative cycles under Agile methodologies; take an active lead in sprint planning, backlog refinement, stand-ups, and retrospectives.
• Collaborate with business analysts, product owners, QA, security, and infrastructure teams to clarify requirements and deliver quality releases on time.
• Communicate progress, risks, and blockers to the team lead and stakeholders; escalate critical issues appropriately.
• Mentor and coach junior and mid-level engineers, share technical knowledge with colleagues, and help the team resolve complex technical problems.
c) DevOps, Release & Operations
• Contribute to and maintain CI/CD pipelines that automate build, test, security scanning, and deployment processes.
• Containerise applications using Docker and deploy, configure, scale, and operate them on Kubernetes and/or OpenShift, including deployment manifests or Helm charts, configuration and secrets management, health probes, and zero-downtime rollouts.
• Use Git for source control, following agreed branching strategies, pull-request reviews, and release procedures.
• Monitor application health and performance using logging, metrics, and distributed tracing; troubleshoot production issues, perform root cause analysis, and implement corrective and preventive fixes.
• Maintain technical documentation, including API specifications (e.g. OpenAPI), architecture and design notes, runbooks, and deployment procedures.
d) Quality, Security & Compliance
• Write unit, integration, contract, and automated tests to maintain adequate test coverage and software quality.
• Apply secure coding practices (e.g. OWASP guidelines) and secure APIs and service-to-service communication; remediate vulnerabilities identified through code scans, penetration tests, and security assessments.
• Performance-test and tune services (application, JVM, database, and API throughput) to meet agreed service levels.
• Comply with ABC’s information security policies, change management procedures, and relevant regulatory requirements.
• Support disaster recovery and business continuity activities, including application failover and recovery testing.
3. Qualifications, Skills & Experience
a) Qualifications
• Bachelor’s degree in Computer Science, Software Engineering, Information Technology, or a related field.
• Relevant certifications such as Oracle Certified Professional (Java), Certified Kubernetes Application Developer (CKAD), a Red Hat OpenShift certification, or a cloud certification (AWS, Azure, or GCP) are an added advantage.
b) Technical Skills & Competencies
• Strong hands-on back-end development experience with Java EE and Java Spring Boot, including building RESTful services and enterprise integrations.
• Strong hands-on experience designing, building, and deploying microservices, with a solid understanding of microservices architecture and patterns (e.g. service discovery, centralisedconfiguration, event-driven design, saga, circuit breaker).
• Strong hands-on experience with containers and orchestration (Docker and Kubernetes and/or OpenShift).
• Strong hands-on experience with API gateways (e.g. Kong, Apigee, WSO2, Spring Cloud Gateway, AWS API Gateway, or Azure API Management), including routing, security policies, rate limiting, and API lifecycle management.
• Strong hands-on experience with relational databases (PostgreSQL, MySQL, and Oracle), including advanced SQL, schema design, indexing, query optimisation, and transaction management; experience with NoSQL databases and caching is an added advantage.
• Strong hands-on experience with messaging and event-streaming platforms (Kafka or RabbitMQ), including designing and building reliable producers and consumers for asynchronous, event-driven microservices.
• Sound understanding of API and application security (e.g. OAuth2, OpenID Connect, JWT, TLS) and OWASP practices.
• Good proficiency in JavaScript, Node.js, Next.js, and ReactJS for modern web application development, complementing core back-end expertise.
• Strong proficiency with Git and CI/CD tooling and pipeline automation.
• Demonstrated ability to apply AI-assisted development tools effectively to accelerate delivery, with sound professional judgement on their limitations and strict adherence to company’s information security and data protection policies, including safeguarding source code, customer data, and credentials.
• Experience with Linux environments and shell scripting is an added advantage.
c) Experience & Professional Competencies
• At least 3 years of proven back-end software development experience, including at least 2 years designing and delivering microservices in production, following Agile software development methodologies and DevOps practices; prior experience in financial services or fintech environments is an advantage.
• Ability to lead technical design, make sound architectural decisions, and mentor other engineers.
• Ability to work independently with minimal supervision and as part of a team; willingness to take end-to-end ownership of deliverables.
• Strong problem-solving, analytical, and debugging skills; ability to multitask and deliver to deadlines.
• Strong communication skills; ability to explain technical concepts to non-technical audiences.
• Strong attention to detail; commitment to code quality, information security, and data protection.
• Collaborative mindset, with a willingness to learn, share knowledge, and support fellow team members.
How to Apply
Interested candidates should submit their resume and a cover letter outlining their qualifications and why they are the most suitable candidate for this role at ABC. Please send your application to applications@agentbanking.co.ug. Please include “Internal Auditor” in the email subject line. The application deadline is 25th October 2026.
Deadline: Oct 25, 2026
Related Jobs