Skip to content
View BIAnalyst-Patrick's full-sized avatar

Block or report BIAnalyst-Patrick

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
BIAnalyst-Patrick/README.md

Patrick Gichuki | Sales & Financial Performance Analyst

Five years in accounting and bookkeeping, and that is the advantage. I spent those years producing and reconciling the numbers businesses make decisions on. Now I build the SQL, Power BI and Python that answers those same questions faster, wider and with the evidence attached. Every project below is written as a decision document: a governing question, the decomposition behind the answer, and an owner for each recommendation.

Open to remote BI / Data Analyst roles. Based in Nairobi, Kenya (EAT, UTC+3). Freelance BI analyst, operating as Sting Analytics on Fiverr and Upwork.

GitHub · LinkedIn · patrickgichuki2@gmail.com


Start here

Three worked case studies, in the order I would show them. Each is a decision document: the question, the decomposition behind the answer, and an owner for every recommendation. All three run on simulated data, disclosed on the first line of each repo — the method is what transfers to a real ledger.

  1. Revenue Decline Diagnostic — Revenue fell 10.7%. I traced it to two of six stores carrying 71% of the decline, ranked the four causes by owning department, and graded my own diagnosis against a sealed answer key: 14/14.
  2. Monthly Management Pack — Sales within 1% of budget, gross profit 19% behind it. An exact price / cost / mix / volume bridge, decomposed across 120 product lines with a named owner on each; 17/17 checks.
  3. Receivables & Cash Conversion Diagnostic — Cash stuck though revenue is fine. Ageing, DSO, best-possible DSO, collection effectiveness, a cash conversion cycle and an illustrative expected-credit-loss analysis informed by IFRS 9 principles on KES 16.8M of receivables: 64% past due, three accounts carry 47% of it; 15/15 checks.

How I work

I work with retailers, wholesalers and SMEs on sales and financial performance — the sales, margin and cash questions their owners actually decide on.

  • Find the cause, not the chart. Every analysis starts from a decision, then decomposes the movement by store, category and segment to find where it sits.
  • Size every fix in gross profit. Each recommendation carries an owner and an expected recovery, converted at margin, so a numbers person can argue with it.
  • Declare the limits. Facts, hypotheses and genuinely unexplained findings are labelled separately. Where the data cannot answer, I say so rather than guess.

Tools, and where to see them used

Tool What I actually do with it Evidence
Power BI semantic models, DAX measures, row-level security, executive dashboards KPI & Margin Dashboard · BMW Financial Health
SQL star schemas, CTEs, joins, window functions, data-quality checks Customer Retention & RFM · the diagnostic pipeline (9 scripts, 696 lines)
Python pandas, scikit-learn, statsmodels, matplotlib, Streamlit apps Churn Prediction · Retail Demand Forecasting · Loan Default Model
Excel Power Query, modelling, executive reporting pizza_sales · E-commerce Order Analysis

Featured work

Project Business question Result Basis
Receivables & Cash Conversion Diagnostic Cash is stuck even though revenue is fine. Which accounts are holding it, and what is actually collectible? Ageing, DSO, best-possible DSO, collection effectiveness, a CCC with inventory and payables legs and an illustrative expected-credit-loss analysis informed by IFRS 9 principles on KES 16.8M of receivables: 64% past due, three accounts carry 47% of it, 6.73M modelled recoverable, 15/15 independent checks Simulated case study
Monthly Management Pack Sales are within 1% of budget and gross profit is 19% behind it. Where did the profit go, and who owns it? A flexed budget and an exact gross-profit bridge: revenue -0.74% against gross profit -19.38%, split into price -41,943.76, cost -26,053.41, mix -14,164.16 and volume +8,755.42 - then decomposed across all 120 product lines, each with a named owner; 17/17 checks Simulated case study
Revenue Decline Diagnostic Revenue fell 10.7%. Where did it come from, and who owns each cause? Traced to two of six stores (71% of the decline) and four ranked problems, each with an owner and an expected recovery; the pipeline is graded 14/14 against a sealed answer key Simulated case study
Executive KPI & Margin Dashboard How is the business performing against its core KPIs? $1.75M revenue tracked, 16.4% margin surfaced, and the margin compression hidden inside the November revenue spike isolated from the headline Dataset result
Customer Retention & RFM Segmentation (SQL) Which customers actually drive revenue, and who is at risk of churning? Pure SQL (CTEs, window functions): 9.6% of customers drive 19.4% of revenue; 1,255 churn-risk flags Dataset result
Sales Team & Product Performance Why was one region $500K behind another? Root-caused across ~9,000 deals; an 8% revenue-recovery plan — an illustrative target, not a measured result Illustrative target
Customer Churn Prediction Which customers are about to leave, and why? 84.7% accuracy, €1.5M at-risk balance flagged, live Streamlit app Dataset result
Retail Demand Forecasting Which forecasting method actually performs best on this data, not just which one we assumed would? 4-model bake-off (Naive, Holt-Winters, SARIMA, Prophet); Prophet won at 6.88% MAPE Dataset result
pizza_sales — menu engineering Revenue is flat all year — where does the next dollar come from without a single new customer? Five levers quantified from 48,620 order lines to ≈ +$88K a year, with the arithmetic shown — a scenario, not realized revenue Illustrative scenario

Each repo's README is written as a standalone business report: the problem, the approach, the findings, and recommendations with an owner, not just code.

Basis says what kind of evidence each Result is. Simulated case study (Revenue Decline, Monthly Management Pack, Receivables) means synthetic data, disclosed on the repo's first line, with no client outcome implied. Dataset result means the figures are what the analysis computed on that project's own dataset — real work on real rows, not a measured business outcome. Illustrative target / scenario (the 8% recovery plan, the $88K opportunity) means a sized opportunity with its arithmetic shown — not a measured result, not realized revenue.

Client work

Fort Beauty — inventory, sales and profitability system for a multi-store beauty retailer (code private; walkthrough on request). The business ran an offline POS with no consolidated view, so I built the layer around it: a Python import pipeline covering four raw POS export formats with duplicate protection, a PostgreSQL/Supabase schema with a full stock ledger and approval workflow, and a Next.js dashboard for profitability, fast/slow/dead stock and stock reconciliation.


Connect

GitHub · patrickgichuki2@gmail.com · LinkedIn

Available for remote BI / Data Analyst roles. Nairobi, Kenya (EAT, UTC+3).

Pinned Loading

  1. Customer-Churn-Prediction Customer-Churn-Prediction Public

    Banking customer churn prediction: 84.7% accuracy with EUR 1.5M of at-risk balance flagged, served through a Streamlit app.

    Jupyter Notebook

  2. E-commerce-Order-Analysis E-commerce-Order-Analysis Public

    E-commerce order analysis built end to end in Excel.

  3. SALES-TEAM-PRODUCT-PERFORMANCE-ANALYSIS SALES-TEAM-PRODUCT-PERFORMANCE-ANALYSIS Public

    Retail sales team and product performance report, root-causing a $500K regional gap across ~9,000 deals (SQL, Excel, Power BI).

    Jupyter Notebook

  4. BMW-s-Financial-Health BMW-s-Financial-Health Public

    BMW financial health, 2017-2024: profit, risk and growth decoded for a Power BI report (Power BI, Excel).