What I can help withEngineering practice by Igor Bartenev

Backend architecture & data pipelines

A growing dataset changes how a system should read, write and process information. I work on Python backends and data pipelines, from relational models to collection workers and search indexes. My Amazon Data and Liqsale work covers acquisition, normalization and bulk processing; the case pages explain the historical scope and implementation.

CTO at Onlihub · Hands-on engineeringKraków, Poland

How I approach the work

  1. Start with the workload

    Identify the expensive path and inspect query plans, access patterns and batch sizes. Model relationships and transaction boundaries in PostgreSQL before deciding that another datastore is needed.

  2. Give each data layer a clear purpose

    Use Redis for suitable temporary or cached state with explicit TTL and invalidation rules. Use Elasticsearch when search and analytical access justify a separate index. Keep the source of truth and the cost of stale reads clear.

  3. Process in bounded batches

    Collection and enrichment workers need concurrency limits, retry handling and bulk storage operations. Separate HTTP, domain rules, persistence and provider adapters so a pipeline can evolve without coupling every layer.

A decision to make early

An extra cache or index improves some workloads and adds invalidation, synchronization and operational costs. I would choose it from measured bottlenecks and consistency requirements, rather than treating a larger stack as an improvement by itself.

Relevant work

Onlihub

Technical ownership of a commerce platform

Explore the skills and implementation details

Tell me about your task

Describe the slow or unreliable operation, the current stack and approximate data volume. Existing measurements help; if there are none, identifying what to measure is the first useful step.

Discuss the task