Job Title: Senior Backend Engineer – 1 year Contract (Extension based on Performance)
Cellulant is the leading one-stop digital payments company in Africa operating in 10 markets i.e. Kenya, Nigeria, Uganda, Tanzania, Ghana, Malawi, Zambia, Zimbabwe, Botswana, and Mozambique: providing the glue connecting everyone to everything, every day.
To do this we are looking for qualified, passionate, dynamic, and vibrant people to drive our strategy and agenda.
Job Summary: As a Senior Software Engineer you work in a team that owns the design, development, and operations for major components of the payments and banking integrations
You should be a distributed systems generalist, able to architect broad systems interactions while being very hands-on, able to dive deep into any part of the stack, and lower-level system interactions. You should value simplicity and scale, work comfortably in a collaborative, agile environment, and be excited to learn.
Software solutions you build must meet internal quality standards and deliver the business metrics for which it was designed.
Duties and Responsibilities
- Design and implementation of scalable distributed systems using Kubernetes, Docker, and other tools in the Cloud Native landscape.
- Build configuration and deployment assets required to deploy and run the distributed applications.
- Design microservices and other service elements to fulfill business requirements on assigned projects.
- Continually evaluate technology changes in the cloud-native landscape and support the team in exploring and implementing solutions that serve the business and team goals.
- As a member of the software engineering division, you will assist in defining and developing software for tasks associated with the developing, debugging, or designing of software applications or operating systems.
- Provide technical leadership to other software developers. Specify, design, and implement modest changes to existing software architecture to meet changing needs.
- The duties and tasks are varied and complex needing good judgment and informed risk-taking.
Qualifications for the role
- 5+ years of experience delivering and operating large scale, highly available, distributed systems.
- Strong knowledge of Java and the Spring framework, and experience with scripting languages such as PHP.
- Strong knowledge of data structures, algorithms, operating systems, and distributed systems fundamentals.
- Working familiarity with networking protocols (TCP/IP, HTTP, HTTPS) and standard network architecture components such as load balancers.
- Strong troubleshooting and performance tuning skills.
- Experience writing software using automated testing practices such as TDD, unit, and integration tests.
- Strong command of version control usage with proper Git flow usage
- Experience working with CI and CD workflows.
- Deep experience with Kubernetes and Docker is a strong plus.
- Experience building multi-tenant, virtualized infrastructure is a strong plus.
- Experience working and designing architectures using the Istio service mesh is a strong plus.
- This role has some aspect of project management. The candidate will need to have strong soft skills to communicate and work well with several cross-functional teams in fulfilling the business requirements.
- Detail-oriented – simply put, the devil is in the details.
- Decision making – succeeding in this role requires both a can-do and risk-taking attitude. With this in mind, it pays to sit back and evaluate the constraints and take a call using good judgment and rigorous planning.
- Project manager – work planning, status review, risk analysis, feasibility analysis.
- Technology Delivery Manager – status review, technical review, planning, design.
- Information security team – vulnerability analysis and patching.
- Infrastructure team – provisioning and capacity planning.
- Other software engineers.
- Support engineers – training, support.
How to Apply
CLICK HERE to apply online.
Hiring will be done on a rolling basis.
Only shortlisted candidates will be contacted.