Summary
Overview
Work History
Education
Skills
Accomplishments
Timeline
Generic

John Muchiri

Berlin

Summary

Software engineering professional with deep expertise in developing robust, scalable applications. Strong focus on team collaboration, driving projects to successful completion, and adapting to evolving requirements. Proficient in multiple programming languages, frameworks, and tools. Values delivering high-quality results and fostering productive work environment.

Overview

12
12
years of professional experience

Work History

Senior Software Engineer

ICE Service GmbH
10.2023 - Current
  • Work as part of a product engineering team to architect and implement complex software systems, ensuring scalability, reliability, and performance our our core music works copyright, licensing and distribution systems.
  • Collaborate with product managers and cross-functional business teams to define product requirements and create comprehensive technical specifications
  • Conduct thorough code reviews, providing constructive feedback to maintain code quality and adherence to best practices
  • Take ownership of critical technical decisions and provide expert guidance in selecting appropriate technologies and tools
  • Champion best development practices, including code documentation, unit testing, and version control
  • Identify and mitigate technical risks, proactively addressing potential challenges throughout the product development lifecycle
  • Mentored junior developers, fostering professional growth and enhancing team productivity.
  • Maintained comprehensive documentation of development work, facilitating knowledge sharing among team members.
  • Proactively identified areas for process improvement, implementing changes that led to significant time savings for the team.

Staff Software Engineer

Delivery Hero
03.2023 - 07.2023


  • Technically lead a team of 4 engineers (Senior and Junior) within the payments reconciliations team that handled payment reconciliations for 70 countries where delivery hero operates.
  • Set standards for engineering excellence in payments and reconciliation tribes by conducting code reviews, proposing different and performant approaches to writing software
  • Work on all levels of software engineering from high level vision, to design and implementations of both self-contained components and large, team-oriented code bases
  • Lead architecting of efficient, stable and extensible system architectures
  • Take ownership of intrinsically hard problems that might impact the business negatively
  • Lead design reviews for critical features and complex software projects within payments tribe
  • Identify performance bottlenecks, bugs and product stability issues and create RFCs on how to fix and fix them
  • Ensure software documentation is up to date
  • Share knowledge and mentor other Senior and Junior Engineers within the payment and reconciliation team
  • Coach and mentor both Senior and junior engineers in the team on different aspects of software development
  • Manage releases for the entire DH fintech platform

Software Engineer

Microsoft
06.2015 - 08.2020
  • Squad tech lead for a team of 4-6 engineers working on people search API and partners onboarding within Microsoft search assistant intelligence
  • Conduct hiring technical screens and virtual onsite interviews for entire Microsoft ADC and London team
  • Design and implement distributed, scalable, resilient, secure and highly performant backend services that host complex machine learning models and algorithms to process critical customer data
  • Work on all levels of software engineering from high level vision, to design and implementations of both self-contained components and large, team-oriented code bases
  • Monitor live site to ensure rock-solid availability
  • Collaborated with data scientists and researchers to develop offline processes to monitor, extract, index and build ML & NLP models
  • Identify performance bottlenecks and product bugs and come up with novel ways to solve them
  • Help onboard and mentor other engineers as they join our team and grow in their careers
  • Refactored legacy codebases for improved maintainability, paving the way for easier future updates.

Lead Software Engineer

Finserve Africa Limited
01.2017 - 08.2020
  • Lead a team of 5-10 Senior and Junior software engineers
  • Conducted hiring and career discussions with my team members.
  • Participated in rewards and performance reviews panel for engineering teams.
  • Innovatively worked to keep my team motivated besides company benefits by organizing inclusive team events, meetups aligned with team interests
  • Worked directly with business users to define requirements and build out new features
  • Worked on developing, releasing, and running large-scale full stack applications
  • Improved performance, reliability, scalability, and security of the bank backend systems
  • Provided direction and guidance to teams on development tools, standards and methodologies
  • Performed code reviews and ensured exceptional code quality
  • Ensured all APIs are built to software engineering standards including full CI/CD and testing automation along with API design best practices
  • Worked closely with product managers, UX designers and other team engineers to define and implement elegant engineering solutions
  • Integrated mobile utilities providers in the East Africa region to the banking system to facilitate efficient utilities payment processing
  • Developed the social payments gateway to facilitate social payment initiatives of international bodies and the government
  • Featured Projects: Jenga Payment gateway platform (https://jengapgw.io/), Jenga Apis (Open banking api's) https://www.jengaapi.io/, Equitel Money Kenya's leading mobile banking platform, Equity Direct utilities payment gateway

Lead Software Engineer

Equity Bank Limited
06.2015 - 01.2017
  • Led a team of software engineers to successfully complete projects within deadlines, ensuring high-quality end products.
  • Enhanced overall team productivity with continuous training and mentoring of junior engineers.
  • Reviewed technical documentation for accuracy, ensuring compliance with industry standards and regulations.
  • Optimized resource allocation, effectively managing budgets and manpower for multiple simultaneous projects.
  • Spearheaded the adoption of azure cloud, event driven architectures and proper software testing approaches within the bank
  • Streamlined deployment processes using CI/CD tools, reducing downtime during updates and minimizing potential errors caused by manual intervention.
  • Ensured our software was meeting SLAs and SLO's by initially designing an oncall process for the entire software development team and subsequently actively participating in on call rotations, resolving and managing oncall issues to resolution.
  • Participated in hiring and candidates selection, onboarding and continuous performance reviews throughout the candidates time in the bank.
  • Reduced technical debt by refactoring legacy code for improved maintainability and reduced error rates.
  • Spearheaded successful deployments and rollouts of software releases by coordinating closely with IT operations teams, ensuring seamless transitions between testing and production environments.
  • Optimized existing code for better performance and usability, enhancing user experience and satisfaction.
  • Identified and resolved software bugs through thorough testing processes, ensuring a stable and reliable product release.

Software Engineer

Kenya Commercial Bank
06.2014 - 06.2015


  • Provided direction and guidance to teams on development tools, standards and methodologies
  • Designed and engineered large-scale projects from conception to completion
  • Translate clients' business requirements and objectives into technical applications and solutions
  • Design, and engineered mobile money integrations to the core banking system eg MPESA, MTN, AIRTEL Money
  • Ensured performance and solid availability of all integration services with bank partners
  • Implemented new features in the T24 core banking system that handled critical customer data operations
  • Nairobi, Kenya
  • Featured projects: KCB-MPESA a leading micro credit platform in Kenya, T24 Core banking scripting, Mobile money payment integrations(MPESA, MTN, AIRTEL)

Software Engineer

Equity Bank Kenya
05.2013 - 06.2014

Education

Bachelor of Science - Computer Science

Kenyatta University
Nairobi Kenya
12-2013

Skills

  • Programming languages Java, Java EE, Javascript(Typescript, NodeJs, ReactJs), Python and Rust
  • Web application development using React js
  • Amazon web services and Azure cloud technologies
  • Team leadership
  • Team player
  • Coaching and mentoring
  • Agile methodologies
  • Design patterns
  • Build releases
  • Project management
  • Microservices architecture
  • Software architecture design
  • API design and development
  • Systems performance optimization
  • DevOps principles
  • Multithreading and concurrency
  • Frameworks - Springboot(Java), ActixWeb(Rust),Flask and Fast API(Python)

Accomplishments

    Most Valuable team player (Microsoft Africa Development) 2021

Timeline

Senior Software Engineer

ICE Service GmbH
10.2023 - Current

Staff Software Engineer

Delivery Hero
03.2023 - 07.2023

Lead Software Engineer

Finserve Africa Limited
01.2017 - 08.2020

Lead Software Engineer

Equity Bank Limited
06.2015 - 01.2017

Software Engineer

Microsoft
06.2015 - 08.2020

Software Engineer

Kenya Commercial Bank
06.2014 - 06.2015

Software Engineer

Equity Bank Kenya
05.2013 - 06.2014

Bachelor of Science - Computer Science

Kenyatta University
John Muchiri