Case studies

Useme - Job Board search refactor

Rebuilt job and freelancer search on Useme, a marketplace with thousands of active jobs a month: full filtering, an SEO tag system, a denormalized read model, rolled out under feature flags.

Case study updated:

Business value: Simpler search for users, faster page loads through a denormalized read model, more Google visibility from a larger SEO tag base, and rollouts with no service interruption.

Outcome: Rebuilt search engine with full filtering by categories, tags, and phrase, SEO tag system with CSV import, and secure deployment process.

Tech stack: Python, Django, Django REST Framework, PostgreSQL, Celery, JavaScript

1000s
active jobs per month on the platform
0
service interruptions during rollout
CSV
bulk SEO tag import and export
PythonDjangoDjango REST FrameworkPostgreSQLCeleryJavaScript

Client and context

Useme - a Polish marketplace platform connecting freelancers with companies, handling thousands of active orders monthly.

Business problem

The job search needed functional improvements (missing search options) and visual cleanup (simplification, view hierarchy). The database, under heavy load, required read operation optimization to minimize page load times. Additionally, the SEO tag database was too small, limiting Google visibility.

Approach and solution

I co-developed the search rebuild with full filtering by phrase, categories, subcategories, and skill tags. I denormalized key tables, which reduced database load and drastically accelerated read speeds. We expanded the SEO tag system with bulk CSV import/export. Everything was deployed under feature flags for safe rollouts.

Delivery scope

  • Search panel with phrase input and Search button - static search triggered on click.
  • Sidebar with category list: clicking reloads the page and shows subcategories. Categories matching the phrase highlighted in black, others grayed out.
  • Skills (tag) search with suggestions - narrowing results by tags attached to jobs and present in listing text.
  • Data model denormalization - planning and implementing a strategy of duplicating key read data to reduce JOINs and speed up search queries.
  • SEO tag system: bulk CSV upload to admin panel, tag database export, improved tag suggestion in the skills input.
  • Optimization of Find Freelancer and Find Job views.
  • Deployments under feature flags - splitting large changes into smaller steps with rollback capability at any point.

Business impact

  • Simplified and more intuitive job and freelancer search.
  • Increased page responsiveness and faster read operations due to data denormalization and reduced database load.
  • Larger SEO tag database through CSV import - better Google visibility.
  • Safe deployments without disrupting application availability.
  • Search result narrowing by tags attached to jobs and present in listing content.
Back to case studies

Other case studies

AiVisible.pl - AI Visibility agency for B2B companies

AiVisible.pl is the AI visibility agency I founded and run: it audits, improves, and monitors how B2B brands appear in answers from ChatGPT, Gemini, Claude, and Perplexity.

PythonDjangoPostgreSQL
View case study →

ParentApp - AI assistant for parents (SaaS)

An AI assistant for parents taken from MVP to a live subscription SaaS: Django/DRF backend, Stripe billing, and OpenAI-powered conversations.

PythonDjangoDjango REST Framework
View case study →

Useme Plus - B2B calculator and membership product development

Backend for Useme Plus, a membership product that lets freelancers settle work without registering a business: cost calculator, Autenti e-signatures, and automated membership validation.

PythonDjangoDjango REST Framework
View case study →

KAS listing monitor - near real-time scraping and alerts

A daemon that scans KAS and tax-office listing pages every 2.5 seconds, detects new sale offers, prepares the e-mail application from the listing data, and reports every step to Discord.

PythonPlaywrightSQLite
View case study →

Lead generation automation platform

A data pipeline for a services company that collects, normalizes, validates, and schedules outbound lead data so campaigns start without manual clean-up.

PythonDjangoPostgreSQL
View case study →

Business process automation suite

A Django automation suite connecting partner and internal APIs with asynchronous orchestration and SLA reporting, for an organization whose critical workflows ran across disconnected tools.

PythonDjangoAPI integrations
View case study →