Freelance .NET & Python Engineer · Kenitra, Morocco · Remote

I turn business problems into reliable software.

I plan software with clients, build business applications from scratch, and improve systems that have become slow, fragile or difficult to maintain. Then I deploy the work and stay involved as it evolves.

Developing software
professionally since
2016
Freelancing since2020
PriorityFreelance projects
Ayman Atif, .NET and Python software engineer
PlanBuildDeployMaintain
Available for freelance work
Direct access to the engineer doing the work.

01 / PROBLEMS I SOLVE

Start with what is getting in the way.

Technology is useful only after the real constraint is understood. These are the conversations that usually begin a project.

For

Small businesses, startups, and agencies that need experienced technical ownership.

01

“We still run this through spreadsheets.”

Turn the workflow into a controlled system without losing the knowledge already inside it.

02

“Our application became slow as usage grew.”

Investigate the full path through data access, server resources, architecture and the browser.

03

“One change keeps breaking unrelated parts.”

Find the coupling, stabilize the important behavior and improve the structure deliberately.

04

“We have the business idea, but no technical plan.”

Clarify the workflow, challenge assumptions and define a practical route to production.

05

“We inherited a system nobody wants to touch.”

Understand it before proposing a rewrite. Preserve what works and reduce risk step by step.

06

“Our deployment process is fragile and manual.”

Make releases repeatable, observable and appropriate for the way the application is operated.

02 / SERVICES

Software work from the first decision through to production.

I can own a new build, join an existing codebase, or handle a difficult part of a larger delivery. The engagement follows the problem, not a fixed package.

01

Business software development

Take an idea from workflow planning and database design through implementation, deployment and support.

Business web applications, backend systems, APIs, internal tools, dashboards, native Android applications with Kotlin, and Windows business software with WPF and MVVM.

02

Existing software revamp

Understand first. Stabilize. Then improve deliberately.

Architecture investigation, production diagnosis, debugging, modernization and technical debt reduction. I avoid proposing a rewrite before the existing system has been understood.

03

Business process automation

Replace repetitive, error-prone work with a process people can operate and trust.

Spreadsheet transformation, document workflows, data pipelines, email automation, listing and buyer matching, and lawful extraction of public web data.

04

.NET and Python development

Production-focused backend and business application engineering.

C#, .NET, ASP.NET Core, ASP.NET Web API, Python, Flask, Django and REST APIs, supported by practical frontend work where the product needs it.

05

Architecture and modularization

Make future changes less risky and easier to reason about.

Clear boundaries, database design, maintainable modules, efficient dependencies, design patterns and careful use of SOLID principles to reduce coupling.

06

Ongoing maintenance and improvement

Software needs engineering after launch, not just before it.

New features, bug fixes, testing, performance and security work, database optimization, refactoring, deployment improvements and production support.

Hire a freelance .NET developer → Explore all software development services View software development work

03 / SELECTED WORK

Software built for real business needs.

The platform below has shared state, sensitive documents, imperfect imports and limited server resources, and people depend on it.

Confidential Freelance Work

Business Valuation & Deal Platform

A production web application that brings financial analysis, document drafting, sharing, exports and deal workflows into one system.

Built from scratch. Maintained for approximately two years.

I was responsible for initial planning, architecture, development, deployment and ongoing maintenance.

Workflows

Valuation analysis, pricing opinions, confidential memorandum building, anonymous listings, folders, controlled sharing and legacy imports.

Engineering

Versioned document state, structured imports, validation, PDF and spreadsheet processing, OCR fallback, reusable templates and print-ready output.

Foundation

Python, Flask, SQLAlchemy, Jinja2, JavaScript and document-processing libraries in a modular application architecture.

Read the business platform case study
Controlled workspace Shared document state Versioned · permission-aware · maintained
01Ingestspreadsheets · PDFs · scans
02Analyzevalidation · financial workflows
03Producetemplates · exports · print
04Controlsharing · access · protection

REAL PRODUCTION CONSTRAINTS

The system had to keep working when conditions stopped being simple.

01

Shared work introduced race conditions.

Multiple people working with shared documents and state required careful investigation of concurrency, ownership and consistency.

02

Limited server resources exposed performance pressure.

Concurrent usage made performance an architectural concern, not a cosmetic optimization. The work required tracing behavior across application and infrastructure constraints.

04 / HOW I WORK

Code starts after the direction is clear.

You work directly with the engineer planning and building the software. No unnecessary layers between the problem and the technical decisions.

  1. 01

    Discuss

    Understand the business problem, the people involved and what is making the current situation expensive or risky.

  2. 02

    Challenge requirements

    Question assumptions where a requested feature may hide a simpler, safer or more useful solution.

  3. 03

    Plan

    Map the workflow, system boundaries, data model, delivery sequence and production constraints.

  4. 04

    Suggest improvements

    Bring technical options back into the business conversation before they become expensive code.

  5. 05

    Reach agreement

    Make the scope and tradeoffs clear so the build starts with shared expectations.

  6. 06

    Build

    Implement maintainable software with attention to security, testing, accessibility, efficient data access and the real operating environment.

  7. 07

    Deploy

    Move the application into production with sensible configuration, migrations, observability and repeatable delivery.

  8. 08

    Maintain

    Fix, improve and extend the system as the business learns and requirements change.

05 / AUTOMATION

Turn a manual process into a repeatable one.

The aim is to make the work structured, repeatable and easy to inspect.

  • Spreadsheet-driven operations rebuilt as software workflows
  • Large spreadsheet cleaning and transformation
  • Public, lawful web data organized into structured files
  • Email campaign and document-processing automation
  • Matching business listings with relevant buyers and leads
01 / MANUAL Files, inboxes,
repeated steps
02 / STRUCTURED Rules, validation,
clear ownership
03 / AUTOMATED Repeatable flow,
visible outcomes
InvoiceFlow / architectureopen source
CLIconfiguration
Pipelineworker execution
Extractioninvoice models
Excelclean workbooks
InputPDF invoices
ProcessingParallel workers
OutputMulti-sheet Excel

OPEN-SOURCE ENGINEERING PROJECT

InvoiceFlow

A Python toolkit that turns PDF invoices into structured invoice data and clean Excel workbooks.

It includes configurable multiprocessing, extraction strategies, logging, tests, demo invoice generation and extension points for other output formats and extraction methods.

How InvoiceFlow converts PDF invoices to Excel: features, install and usage →

Python · pdfplumber · pandas · openpyxl · ProcessPoolExecutor · pytest
Inspect the project on GitHub

PUBLIC DATA ENGINEERING PROJECT

UK Company Data Tool

A Python tool that streams the large Companies House company data file in chunks and writes filtered Excel lead lists, one folder per postcode area.

An optional second step looks for each company's website and records publicly listed business contact details, only when the site can be verified as belonging to that company. Coverage is limited, and the project documents its limitations.

How the UK Company Data Tool works: approach, limits and responsible use →

Python · pandas · xlsxwriter · chunked CSV streaming · Companies House data
Inspect the project on GitHub

06 / ABOUT

I prefer understanding the business before touching the code.

I started programming in 2014 through personal projects and have developed software professionally since 2016, first as a .NET developer at Grosomodo and then at Tatbik.ma until August 2025. Since 2020 I have also taken on paid freelance projects alongside that employment, and in 2026 freelance client work is my main focus. I am based in Kenitra, Morocco, and work remotely.

My work usually begins with a conversation about the process, not a programming language.

I challenge requirements when needed, plan the workflow and architecture, suggest improvements, and build once we agree on the direction. I then deploy the software and continue maintaining it.

Clients work directly with me. I care about what happens after launch: whether the system is secure, observable, accessible where it should be, efficient with its data, and maintainable when the next change arrives.

Backend and APIsWeb applicationsDesktop and AndroidSQL databasesCI/CD and AzureTechnical SEO and accessibility

Read my full story →

07 / QUESTIONS

Questions clients ask.

Where are you based, and how does remote collaboration work?

I’m based in Kenitra, Morocco, and work remotely. Before work starts, we agree on scope, priorities, access to the codebase, review points and how progress will be shared. You discuss requirements directly with me, the engineer doing the work.

How long have you been developing software?

I started programming in 2014 through personal projects while studying. I have developed software professionally since 2016, first at Grosomodo and then at Tatbik.ma until August 2025. My professional experience lists both roles and the work they involved.

Do you work as a freelancer or as an employee?

I work as a freelancer. I took on paid freelance projects alongside my full-time jobs from 2020, and in 2026 freelance client work became my focus.

Which technologies and projects do you work on?

My main tools are C#, .NET, ASP.NET Core, Python, REST APIs and SQL databases. I build business web applications, internal tools, APIs and integrations, and automate spreadsheet and document workflows. See .NET development, Python development and selected work, including the open-source InvoiceFlow toolkit.

Can you maintain or modernize an existing application?

Yes. I start by understanding the code, data, deployment and how people use the system, then stabilize and improve it step by step instead of proposing a rewrite by default. Read how I approach modernizing older software, or the CRM data migration case study.

How can I discuss a project with you?

Email me at a95yman@gmail.com or see the contact page. For a project, a short description of the current process, the problem and the outcome you want is enough; you don’t need a finished specification.

08 / START A CONVERSATION

Have a new idea, a difficult codebase, or a process that should not still be manual?

Tell me what you need fixed or built, and I’ll tell you how I would approach it.

a95yman@gmail.com