Generic Soft

Engineering teams built around your needs — from solo engineers to full-scale squads.

SOFTWARE DEVELOPMENT Custom Software Development Web Application Development Backend Development Frontend Development E-commerce Development MVP Development SaaS Development UX/UI Design AI & MOBILE Machine Learning Deep Learning Computer Vision Natural Language Processing Agentic AI LLM Integration iOS App Development Android App Development Cross-Platform App Development CLOUD, QA & DATA Cloud Migration Cloud Architecture DevOps & CI/CD Cybersecurity Software Testing & QA Automation Testing Business Intelligence Big Data CRM All Services → OUR PRODUCTS
MSGPLS Viber business messaging

Sell more in every chat Support that never sleeps Every delivery in the loop Campaigns people answer

Product offers, cart reminders and checkout — right inside Viber, where your customers already are.

Boost my sales
INSECTARIUM-X TRL 7 Automated Bio-Protection

Precise Microclimate Remote Control Full Traceability Autonomous Operation

Automated management of temperature, humidity, lighting, and ventilation for reliable breeding of beneficial bioagents.

Request a Demo

We've delivered 60+ projects across 11+ sectors. Experience in your industry? We have it.

Agriculture Banking Fintech Insurance Healthcare Real Estate Logistics IoT AI Cybersecurity Blockchain All Industries → Careers Technologies Our Work Blog
Case Study · Location data · Web scraping

Location Data at Scale.

1,500+ compliant web scrapers that keep a global mapping company's points of interest (shops, banks, fuel stations and restaurants) accurate for customers worldwide.

Client project · The client's name is withheld at their request. World map with pins marking store locations collected by web scrapers
Client Global location-data and mapping company (confidential) Since Mid-2025, five successive contracts Scope 2,000+ brand websites, many countries Core stack Python · Scrapy · GeoJSON
The challenge

Every brand's website is different.

The client's points-of-interest database (shops, banks, fuel stations, restaurants) must stay accurate for customers worldwide. The freshest store data sits on each brand's own website, and no two of those sites are built the same way.

They needed thousands of site-specific scrapers across many countries, built quickly, to a strict compliance standard, and able to pass the client's own review before production.

Five differently built brand websites, each read by its own Python scraper, merged into one locations.geojson file with brand, category, latitude and longitude
Store locators, branch directories, postcode searches and opening-hours tables all end up in one schema. Brand names shown are invented for illustration.
What we did

One site, one scraper, one standard.

Since mid-2025 Generic Soft has delivered three large scraping batches for the client under five successive contracts. Four rules shaped every one of them.

01

One site, one scraper: each chain gets a dedicated Python scraper producing clean, standardised location data.

02

Compliant by design: official brand sites only, no workarounds for anti-bot protection.

03

Quality gates on every scraper before it reaches the client's review.

04

Transparent weekly reporting, which the client adopted for another vendor.

How we worked

From the client's list to live data.

Every website moves through the same five steps. When the client's review finds something to fix, it goes back to the same scraper, so quality improves without starting over.

Five-step pipeline: site list, scraper, quality gates, client review, production, with fixes looping back from client review to the scraper
How a single website moves from the client's list to live points-of-interest data.
Results

Over 1,500 scrapers delivered since mid-2025.

A lean team kept pace at dozens of sites a week. The only limit was how fast new sites were supplied.

1,500+ Scrapers delivered 2,000+ Websites handled Hundreds Scrapers accepted in under three months, in the current batch alone Dozens Sites a week from a lean team Ahead of schedule Earlier batches

Earlier batches finished ahead of schedule.

A second client team Extra batch

An extra batch for a second client team, awarded on speed and quality.

Reporting

Reporting the client copied.

Every week the client sees what was accepted, what is in review and what is being built. No chasing, no surprises.

The format worked well enough that the client adopted it for another vendor.

Illustrative weekly delivery report: stacked bars per week for accepted, in client review and building
The engagement

How the engagement grew.

Three large scraping batches under five successive contracts, and a new client team along the way.

Mid-2025, first batch: dedicated scrapers, quality gates and weekly reporting from day one.

Second batch: like the first, finished ahead of schedule.

Current batch: hundreds of scrapers accepted in under three months.

Second client team: an extra batch, awarded on speed and quality.

Tech stack

Built with

Scrapers Python Scrapy Output GeoJSON

More case studies

View all work → See case study → Advanced Financial Analytics See case study → Carrousel Digital Limited See case study → Insectarium

Ready for results like these? Discover if we're a good fit for you.

Case Study · {{ cs.industry }}

{{ cs.name }}.

{{ cs.summary }}

Client project · The client's name is withheld at their request.
Co-funded by
the European Union
Programme
Competitiveness and Innovation
in Enterprises
{{ cs.heroAlt }}
{{ cs.industry }}
{{ x.k }}
{{ x.v }}
{{ s.eyebrow }}

{{ s.title }}

{{ p }}

{{ s.chatName }}
Chatbot on Viber
{{ c.t }}
Illustrative conversation
{{ s.macTitle }}
Portfolio value
{{ s.macValue }}
Live
{{ r.n }}{{ r.v }}{{ r.d }}
Illustrative interface
Whole house · now
{{ s.homeTotal }}
{{ p.l }}
{{ r.n }}{{ r.w }}
{{ m.k }}
{{ m.v }}
Illustrative dashboard
Sender
Sending
−€25.00
NFC
Receiver
Received
+€25.00
{{ t.t }}
Illustrative offline transfer
{{ s.panelTitle }}
{{ x.t }}
{{ s.panelHub }}
{{ s.panelHubSub }}
{{ t }}
{{ s.imgAlt }}
{{ s.flowTitle }}
{{ x.t }}
{{ s.flowEngine }}
{{ s.flowEngineSub }}
ParameterPreviousCurrent
{{ r.p }}{{ r.a }}{{ r.b }}
Illustrative delta report
{{ s.eyebrow }}

{{ s.title }}

{{ s.intro }}

{{ c.n }}

{{ c.t }}

{{ s.eyebrow }}

{{ s.title }}

{{ p }}

{{ r.t }}

{{ s.eyebrow }}

{{ s.title }}

{{ s.intro }}

{{ m.v }}
{{ m.k }}
{{ c.name }}{{ c.count }}

{{ c.desc }}

{{ s.note }}

{{ s.eyebrow }}

{{ s.title }}

{{ ft.t }}
•{{ sb }}
{{ s.eyebrow }}

{{ s.title }}

{{ s.intro }}

{{ col.title }}
{{ o }}

{{ col.note }}

{{ s.closing }}

{{ s.eyebrow }}

{{ s.title }}

{{ s.intro }}

{{ s.eyebrow }}

{{ s.title }}

{{ p }}

{{ s.imgAlt }}
Swipe sideways to see the full diagram.
{{ s.caption }}

{{ s.quote }}

{{ s.by }}
{{ s.eyebrow }}

{{ s.title }}

{{ st.cat }}
{{ it }}
{{ m.value }}
{{ m.label }}
{{ b.eyebrow }}

{{ b.title }}

{{ b.p1 }}

{{ b.p2 }}

Outcomes

What changed for {{ cs.name }}

✓{{ o.text }}
“

{{ cs.quote }}

{{ cs.quoteBy }}
{{ cs.name }}
How we worked

From kickoff to production in four phases.

{{ ph.when }}
{{ ph.title }}

{{ ph.text }}

Ready for results like {{ cs.ctaLike }}? Discover if we're a good fit for you.