Middle Python Developer with SQL Skills

BETBY · posted Nov 4, 2026

Open to candidates in Armenia, Georgia, Kazakhstan, Latvia, Poland and Serbia

Full-time · Mid-level

Sign up and we score this job against your resume. You never pay to apply.

RemoteHunt reads employers' own pages. Free to browse. How we check

What this job asks for

Extracted by RemoteHunt

Must have

  • •3+ years of commercial Python development
  • •Strong SQL (complex SELECTs, GROUP BY, window functions)
  • •Experience with columnar/OLAP databases
  • •Experience building REST APIs in async framework
  • •Understanding of message brokers (RabbitMQ/Kafka)
  • •Ability to understand business metrics and translate to queries

Nice to have

  • •Hands-on ClickHouse experience
  • •Jinja2 or other SQL templating
  • •Pandas for data post-processing
  • •MongoDB
  • •GraphQL

Tools and technologies

Python, SQL, Jinja2, GraphQL, REST API, Kafka, RabbitMQ, MongoDB, Docker, Prometheus, Grafana, ELK, asyncio, Pydantic, ClickHouse

Read the full posting

ABOUT BETBY

As a fast-growing, award-winning company, Betby powers the industry with our premium sportsbook, featuring world-class risk management and seamless omni-channel support, reaching millions of players across countless markets. With offices in Latvia, Malta, Spain, Greece and Montenegro, we offer a vibrant work culture, relocation opportunities, and full support for remote talent across the globe.

Join Betby and unlock endless opportunities for growth, success, and making a real impact in the world of iGaming!

SHORT DESCRIPTION

We are looking for a Python developer to join the Backoffice Reports team behind the Reports section of our back-office. You will own the backend of analytics reports used daily by operation teams (risk management, trading, account management and etc). The stack is async Python on top of ClickHouse. Reports are described as typed Pydantic models plus Jinja-templated ClickHouse SQL, executed through an RPC service over RabbitMQ and exposed to the UI through REST/GraphQL endpoints with OpenAPI-driven dynamic forms.

TECH STACK

  • Python 3.13+ (asyncio, Pydantic v2)
  • SQL
  • Jinja2 (SQL templating)
  • GraphQL
  • REST API
  • Kafka
  • RabbitMQ
  • MongoDB
  • Docker
  • Prometheus
  • Grafana
  • ELK

#NODJANGO :)

RESPONSIBILITIES

  • Develop and maintain reports in the Backoffice: filters, grouping, sorting, pagination, totals, drill-down links between reports, CSV exports and chart data
  • Write and optimize analytical ClickHouse SQL: aggregations over hundreds of millions of bets, multi-level grouping, period breakdowns (day / week / month / year)
  • Describe reports as typed contracts (Pydantic models for filters and output) in our shared reports library, which the analytics team also uses to tune queries
  • Work with the RPC layer between the backoffice API and the ClickHouse reporter service (RabbitMQ)
  • Implement access control for reports: scopes and roles, operator / brand data isolation, hiding fields depending on user role
  • Investigate slow reports: read query plans, choose the right filters, PREWHERE, pre-aggregation, and work with the analytics/DataFlow team on table design
  • Cover reports and SQL with tests, keep data correct across backoffice applications
  • Take part in code review and help evolve the reports framework (new report types, presets, custom segments)

REQUIREMENTS

  • 3+ years of commercial development in Python
  • Confident asyncio: async/await, concurrency, async I/O clients
  • Pydantic v2 (models, validation, serialization) and type hints
  • Strong SQL - this is the key requirement:
  • Complex SELECTs with JOINs, subqueries and CTEs (WITH)
  • GROUP BY on several dimensions, conditional aggregation (SUM / COUNT with conditions)
  • Window functions
  • Understanding of how analytical queries scale and why a query is slow
  • Experience with a columnar / OLAP database (ClickHouse preferred; Vertica, Exasol, BigQuery, Redshift, Snowflake are a plus)
  • Experience building REST APIs in an async framework (Sanic, aiohttp, FastAPI, Starlette)
  • Understanding of message brokers (RabbitMQ and/or Kafka) and RPC over queues
  • Git, Docker, writing tests with pytest
  • Ability to understand a business metric (GGR, stake, payout, margin, etc.) and turn it into a correct query

NICE TO HAVE

  • Hands-on ClickHouse: MergeTree family engines, FINAL, PREWHERE, dictionaries (dictGet), -If combinators, ARRAY JOIN, WITH TOTALS, quantiles, uniq / uniqExact
  • Jinja2 or other SQL templating / query builders
  • Pandas for data post-processing and exports
  • MongoDB
  • GraphQL
  • Domain knowledge: sports betting, iGaming, fintech or ad-tech analytics
  • Prometheus / Grafana / ELK for monitoring and troubleshooting
  • Monorepo tooling (Pants, Poetry, uv), Nix

WHAT WE OFFER

  • Comprehensive health insurance with coverage for your well-being
  • Paid sick leave up to 10 days without medical certificate
  • 20 days of paid vacation plus additional leave for important life events
  • Learning and growth opportunities with support for professional development
  • Language learning support for multilingual collaboration
  • Modern hardware provided for your work
  • International team environment across multiple countries
  • Corporate events and team activities
  • Welfare support program for critical situations
  • Gifts and support for major life milestones

WHY JOIN OUR DREAM TEAM?

Betbyterians is a passionate team dedicated to creating exceptional B2B betting products. United by trust, support, and fun, we aim to revolutionize online gaming, tackling challenges with agility, creativity, and teamwork. Driven by innovation and strong business practices, our achievements speak for themselves. Experience it first-hand, join us and be part of something extraordinary. Welcome to Betby!

Send this job to a friend:TelegramWhatsApp

More remote jobs

More remote jobs open to candidates in

Get new jobs like this by email

Once a week. Remote backend engineer jobs that can hire you in your country.

Hiring in: your countryChange

Weekly, only when there are at least 3 new jobs. No account needed. Unsubscribe in one click. You never pay to apply. Privacy

See how well this job fits your resume

Free, no card.

See my match for each job — free