|Job Holder : TECHSAVANNA COMPANY LTD -Nairobi|
|Reports To : Engineering Manager Local Payments|
|Department : Software Engineering|
|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.
● BS or Ms degree in Information Technology, Computer science or related equivalent in the functional area.
● 4 years of software engineering or related experience. Experience
● 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.
● 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.
If you feel that you are up to the challenge and possess the necessary qualification and experience, please send your resume with your cell phone contact indicating your experience and why you are the most suitable candidate for the role, clearly quoting the job title and job reference to the address below.