- Contents
- Open Jobs
- M-Pesa Africa Senior Software Architect
- Backend Microservices Developer
- Financial Systems Software Development and Systems Engineering
- CBS Product Development Engineer
- Analyst – Enterprise Systems Support
-
Method of Application
Open Positions at Safaricom Kenya
M-Pesa Africa Senior Software Architect
- Job Type Full Time
- Qualification BA/BSc/HND
- Experience
- Location Nairobi
- Job Field ICT / Computer 
Key Responsibilities:
Software Architecture Design
- Provide high- and low-level software architecture and designs for Tier 1 applications including mobile app ecosystems, backend APIs, and orchestration layers.
- Perform code reviews and map software design to code.
- Define architectural strategies and initiatives which enhance solution design, performance, and usability.
- Provide guidance for inter-team design and lead architectural implementation.
- Create high-level software architecture blueprints and design specifications for applications.
- Define the overall structure of the application, including the choice of frameworks, platforms, and tools.
- Provide the technical basis for a fully evolutionary and incremental implementation approach – help developers and designers respond to immediate user needs while allowing the architectural design to evolve.
- Mobile App Design
- Define end-to-end architecture for mobile-first digital experiences, supporting super app frameworks, mini-app platforms, and SDK integrations.
- Lead the architectural design of mobile application backends that ensure responsiveness, session resiliency, and scalable concurrent user handling.
- Create reusable architectural patterns for mobile-to-backend communication including REST, GraphQL, gRPC, and asynchronous event-driven APIs.
- Collaborate with Android/iOS teams to align mobile app architecture with backend service evolution, authentication flows, and CI/CD processes.
- Design architectures that embed observability, mobile crash analytics, real-user monitoring (RUM), and distributed tracing for mobile interactions.
- Define secure mobile design patterns including token lifecycle management, device attestation, secure API access, and encrypted data at rest and in transit.
- Support agile teams with architecture enablers that accelerate delivery of mobile releases — via BFFs (Backends-for-Frontends), API orchestration, and feature flagging.
- Evaluate and guide adoption of technologies such as Flutter, React Native, Kotlin Multiplatform, or platform-specific SDKs within the M-PESA super app stack.
Architecting for DevOps and Release on Demand
- Design software architecture for testability, reusability, deployability, and releasability.
- Ensure solutions are architected for continuous deployment and delivery by decoupling deployments from releases.
- Define a Minimum Viable Architecture supporting the creation and evolution of systems and systems interfaces.
- Foster architecture as code through common naming conventions, attributes, and annotations.
- Build quality in by automating architectural compliance checks.
- Promote and build trust in the Continuous Delivery Pipeline for Agile Release Trains to independently explore and test ideas in a true production environment.
- Develop prototypes to validate architectural decisions and demonstrate concepts.
- Experiment with new technologies and methodologies to assess their viability.
- Architect deployment-ready solutions with progressive rollout, A/B testing, and blue-green deployments for app version management.
Support Alignment
- Collaborate with Systems, Security, and Data Architects to ensure discrete solutions created by ARTs and Suppliers fit into and support the larger capabilities of the overall solution.
- Participate in backlog refinement and prioritization sessions.
- Define enabler capabilities, architectural runway, and NFRs.
- Participate in regular Architect Sync sessions to ensure consistency in emerging designs and managing trade-offs across all ARTs and Shared Service teams.
- Participate in regular Solution Demo sessions to demonstrate new implemented approaches and assess fit for purpose.
- Collaborate with Release Management to assess releasability of elements of the solution in line with the Release Strategy.
- Actively work with Agile Teams to ensure that emergent design choices minimise technology complexity and avoid unnecessary duplication of capabilities while reducing or eliminating technical debt.
Qualifications
Technical Experience:
Essential:
- Proficiency in producing High- and Low-Level Software Architecture designs for Tier 1 Business Critical Applications.
- Expertise in deploying, configuring, and supporting software into Dev, Test, and Production environments.
- API and middleware/orchestration layer design and build experience.
- Strong understanding of security principles, standards, and frameworks such as ISO 27001, NIST, and CIS Controls.
- Proficiency in multiple programming languages (e.g., Java, C#, Python, Rust).
- Experience of various software engineering playbook frameworks (Agile development, Automated testing, Code reviews, Continuous delivery, Continuous integration, Machine learning, Observability, Privacy, Reliability, Security).
- Strong experience in designing high traffic, scalable, reliable, and secure software systems.
- Knowledge of architectural styles and patterns (e.g., Microservices, SOA, MVC, Event-driven architecture).
- Expertise in cloud platforms (e.g., AWS, Azure, Google Cloud).
- Proficiency in SQL and NoSQL databases.
- Experience with data modelling, data warehousing, and data integration.
- Experience in Mobile App Development and Mini-app Frameworks.
- Knowledge of software security principles and best practices.
- Experience with identity management, authentication, and authorization.
- Skills in performance tuning, load balancing, and monitoring.
- Ability to diagnose and resolve performance issues.
go to method of application »
Method of Application
Key Responsibilities
- Software development for new financial solutions as per the approved solutions designs.
- Participate in design for new solutions.
- Software testing to meet both functional and non-functional requirements (monitoring, performance testing etc.)
- Document and maintain software functionality and document released software.
- Troubleshooting, debugging, upgrading and optimization of existing systems.
- Recommend and execute improvements to existing systems.
- Internal Process Improvement in accordance with Software development standards.
- Participate in code reviews.
- Release and change management
- Contributing towards innovative initiatives.
- Undertake necessary measures to increase the quality of delivery and ensure zero major defects.
- Development of microservices using java and spring framework.
- Use CI/CD to automate deployments.
- Deliver projects on time as agreed upon by the various stakeholders.
- Making use of agile and scrum frameworks in project delivery while making use of tools like Jira, Confluence etc.
- Development of automated tests for functional, performance, and security testing using test-driven development.
- Evaluation of new and existing financial systems infrastructure.
- Planning & design for new financial solutions.
- Platform capacity planning
- Financial solutions technology evolution to attain 99.999% service availability.
- Implementation and integration of new hardware/software.
- Optimization of existing systems.
- Internal Process Improvement in accordance with ITIL and Agile standards.
Qualifications
- Degree in one of the following: Computer Science, Telecommunications; Electronic Engineering; IT (Computing) – Operating systems, databases, system development
- 2 years of work experience as an engineer in Financial Technology or a telecommunications environment.
- Knowledge and experience on coding languages (e.g., Java, Python, JavaScript) and frameworks/systems (e.g., Spring framework, AngularJS, React, Git, Apache camel, Node Js and GraphQL.)
- Experience and Strong understanding of both JSON and SOAP
- Experience in securing APIs using Oauth2, SAML etc.
- Knowledge in Agile methodology. Certification in Scrum fundamentals is an added advantage.
- Knowledge in DevSecOps, CI/CD and version control (Git)
- Good understanding of writing unit tests.
- Experience working with relational and non-relational databases i.e., Oracle, MySQL, Mongo DB, Cassandra
- Experience in mobile money systems.
- Knowledge in cloud technologies (AWS, Microsoft Azure, Huawei or GCP).
- Knowledge in container orchestration technologies (Kubernetes, openshift container platform etc.)
- Proven Analytical & problem-solving skills.
- Good presentation skills required.
- Good public relations, communication & interpersonal.
go to method of application »
Leave a Comment