Skip to content
Ascend Automation Agency

Custom internal tools for when the platform runs out

A custom internal tool is software written for one job your business needs done and no product does well. When Airtable, n8n, or your CRM hit their limits, we write the missing piece in Python or JavaScript: a scraper, a data pipeline, a classification service, a small web utility. Shipped with version control, tests, and documentation, so it outlives the project.

What this looks like in practice

For an e-commerce learning-supply business we built a product pipeline: scraping, embedding generation, and a category-matching service that classifies new products automatically.

As proof of depth, our own data product normalizes 9.4 million healthcare provider records every month on AWS. It runs serverless (Aurora PostgreSQL, Fargate ETL, Lambda APIs, all Terraform-managed) with a test suite of more than 2,100 automated tests. The same engineering standards apply to a two-week client tool.

What we build

  • Scrapers and data collectors that respect rate limits and recover from failures
  • Data pipelines that clean, deduplicate, and load data on a schedule
  • Classification and matching services built on embeddings or rules
  • Internal web utilities: a form, a lookup, a dashboard, an approval screen
  • Command-line and scheduled scripts that replace a manual procedure

How we build it

AI-assisted engineering is what makes fully custom software affordable on a small-business budget. We still do it properly: a git repository you own, automated tests, continuous integration, and a README that explains how to run and change the tool. Your business is not locked to us to keep it working.

Tools we use

Python, JavaScript and TypeScript, PostgreSQL, AWS (Lambda, Fargate, Aurora), Terraform, GitLab and GitHub CI, Apify.

Questions we hear

Why not just use a no-code platform?

We do, whenever it fits. Custom code is for the step the platform cannot do, or does so awkwardly that it costs more to maintain than to write. Most of our builds are a platform plus a small custom piece.

Who maintains it after launch?

We do, under ongoing support, or your team does using the documentation and tests we hand over. Either way the code is yours.

Hit the limits of your platform?

Schedule Your Discovery Call