Jasper Addyman

Available to hire

Practical and detail-oriented Python Developer and Data Analyst with approximately six years of experience working with SQL databases, Microsoft Excel, Python automation and business reporting.

About

Practical and detail-oriented Python Developer and Data Analyst with approximately six years of experience working with SQL databases, Microsoft Excel, Python automation and business reporting.

Experienced in helping businesses organise data, improve reporting processes, automate repetitive tasks and develop straightforward, reliable solutions to everyday operational problems.

Confident working independently on smaller development projects, particularly those involving data cleaning, spreadsheet automation, SQL queries, financial reporting and the integration of information from different sources.

Currently working as a freelance developer, delivering remote Python, SQL and Excel projects for small businesses and individual clients.

Comfortable communicating with non-technical customers, understanding project requirements, troubleshooting existing systems and delivering clearly documented work.

  • Joined November 2026

Industry experience

  • Professional Services
  • Retail

Projects · 4

A bulk import can finish without errors and still leave the wrong prices or stock counts behind. This original Sheetstead Studio demo shows how to check a staging export against the agreed catalogue changes before release.

What I built

A read-only Python check compares three CSV exports by SKU: the baseline, the approved changes and the updated staging export. It reports expected and observed values for missing or unexpected products, unapproved changes and mismatched approved prices or stock counts.

What I verified

On fictional data, two of four approved changes matched at first and five exceptions were flagged. One SKU should have had 15 units but still showed 12. After the corrections, four of four approved changes matched and the recheck found zero exceptions across eight expected products.

This is an AI-assisted studio demonstration. It uses fictional files and makes no changes to a live store. The results were checked against known fixture values.

[View the audit results and before-and-after comparison](https://www.twine.net/signin

An original Sheetstead Studio example of what happens when a destination has saved an invoice but the caller receives a timeout. Retrying a request should recover the result without creating another invoice. All data is fictional.

What I built

A nine-node n8n workflow validates amounts, uses stable invoice keys and sends requests to a Python fixture API. The API stores each key and amount in SQLite. It returns the stored result for an exact replay and flags a conflict when the amount changes. The workflow caps retries at three attempts and records rejected or exhausted cases separately.

What I checked

I ran all eight cases twice in n8n 2.47.3, restarting the fixture API between runs. Independent database checks found the same three records and £454.00 in fictional invoice amounts after both runs. The tests cover duplicate keys, changed amounts, HTTP 429 and 503, a gateway timeout after a committed write, permanent rejection, exhausted retries and invalid input blocked before a request.

This is an AI-assisted engineering sample, not a client deployment. The HTTP failures are controlled test cases; real transport failures and production monitoring require separate handling.

[See the workflow, source files and verification results](https://www.twine.net/signin

  • Database Developer
  • Developer
  • QA Engineer

An original SQLite demonstration using fictional billing and product records for one month.

The brief. Reconcile monthly recurring revenue to an independent billing total, and identify problems that could distort product metrics.

The method. I matched product events and subscription records by account, normalised annual billing to monthly amounts, and removed exact duplicates. The audit keeps revenue independent of event volume, excludes trial starts from product activity, and flags conflicting IDs and missing or unknown account keys.

The result. October recurring revenue reconciled to $250.00 with zero variance. The sample contains three paying accounts and two active accounts. It flagged one duplicate billing row, one duplicate event and two events with missing or unknown account keys.

I tested the month boundary and confirmed that a conflicting event changes the activity count without changing billed revenue.

An original portfolio sample built for a fictional services business.

The brief. Show when cash could fall below a minimum balance and how collection delays change the outlook.

The workbook. I linked 26 invoices, split payments and scheduled costs to a 13-week cash forecast. A dashboard dropdown switches between base, downside and upside collection scenarios. The reconciliation flags unmatched payments so they can be resolved before reporting.

The result. The base case dips £881 below the cash floor before recovering. In the downside case, the lowest balance is negative £33,109. I checked all three scenario totals against a separate calculation and tested the unmatched-payment rule.

Tools. Microsoft Excel, scenario modelling, dashboard reporting and data validation.

Work experience

Freelance Python, SQL & Excel Developer · Self-employedJan 2024 – Present · 2 yrs 11 mos

Providing remote freelance programming, spreadsheet development and data management services to small businesses, independent professionals and commercial clients. Projects typically focus on improving existing Excel spreadsheets, creating Python automation scripts, developing SQL queries and helping clients manage their business information more efficiently. Created a Python script that combined monthly sales data from more than 30 Excel files into a single reporting workbook. Automated a recurring data-cleaning task, reducing approximately four hours of manual work to under 30 minutes.

Data Analyst / SQL Reporting Assistant · Meridian Business Solutions LtdMar 2022 – Dec 2023 · 1 yr 10 mos

Worked remotely as part of a small data and reporting team supporting business clients with operational information, database queries and management reports. The role involved maintaining existing reports, preparing data extracts and assisting more experienced developers with reporting improvements. Helped automate a weekly Excel reporting process, reducing preparation time from approximately five hours to one hour. Assisted in the migration of several legacy Excel reports to Power BI. Produced clear documentation that allowed non-technical employees to run standard reports independently.

Junior Data Analyst / Excel Reporting Assistant · Cedarline Business ServicesSep 2020 – Feb 2022 · 1 yr 6 mos

Office-based position supporting finance, administration and operations teams with spreadsheets, database records and regular business reporting. This role provided practical experience working with commercial datasets, learning SQL and developing basic Python automation skills. Maintain Excel spreadsheets containing financial and operational information. Prepare weekly and monthly performance reports. Support reconciliation of spreadsheets against accounting records. Develop simple Python scripts for CSV processing.

Education

BSc (Hons) Computing — 2:1 · University of the West of England, Bristol2017 – 2020

Relevant modules: Database systems Programming fundamentals Software development Data structures Business information systems Statistics and data analysis Web technologies Systems analysis

Certifications and awards· 5

Microsoft Office Specialist: Excel Expert2023

Microsoft

Google Data Analytics Professional Certificate2022

Google / Coursera

Python for Everybody Specialization2021

University of Michigan / Coursera

SQL for Data Analysis2021

Professional online training

Hire Jasper Addyman today

Post a job and invite Jasper, or contact them directly. No hidden commission.

Post a job