Lead Python developer
Summary
Lead Python developer building a financial system for the public/government sector. Day-to-day work spans owning features end-to-end (design to release), async Python services with FastAPI and Django, PostgreSQL/Redis/Elasticsearch, Helm/Kubernetes and GitLab CI/CD, plus testing, observability, security by design and mentoring teammates.
Запрошуємо досвідченого Lead Python Developer долучитися до розробки фінансової системи для державного сектору.
Вимоги
- Python Core та асинхронне програмування — глибока експертиза у внутрішніх механізмах Python. Вичерпне розуміння роботи з асинхроним кодом і досвід застосування на production-проектах.
- Веб-фреймворки — глибокий практичний досвід з:
- FastAPI: побудова production-ready REST API, Pydantic v2, асинхронна робота з БД через SQLAlchemy
- Django: оптимізація ORM, побудова складних схем БД та розподілена обробка задач через Celery
- Бази даних та сховища — досвід роботи з базами реляційними (PostgreSQL), повнотекстового пошуку (ElasticSearch, Postgres fts) та кешування (Redis). Вміння проектувати схеми БД, писати складні SQL-запити та оптимізувати їх виконання
- Інфраструктурні знання — розуміння і досвід з IaC (Helm, Kubernetes), впевнене володіння інструментами контейнеризації, досвід роботи з інструментами CI/CD, (у нас GitLab CI/CD)
- Практичні навички застосування Security by Design — розуміння векторів атак (XSS, CSRF, SQL Injection) та вміння будувати захищені системи через налаштування CSP, HTTPS та безпечне управління конфігураціями.
- Якість та спостережуваність — досвід проектування комплексних стратегій тестування: unit, інтеграційні та e2e тести на pytest, включно з параметризацією, паралелізацією та snapshot-тестуванням. Практичні навички побудови observability: структуроване логування, налаштування метрик у Prometheus та Grafana, аналіз логів в OpenSearch. Досвід розслідування та усунення production-інцидентів.
- Soft skills — здатність самостійно вести задачі від технічної постановки до релізу, обґрунтовано захищати технічні рішення та доносити їх до нетехнічних стейкхолдерів. Досвід менторства та проведення code review з акцентом на розвиток команди.
Буде перевагою
- Досвід роботи з aiohttp
- Досвід роботи з фронтенд-фреймворками (React, Angular або Vue) на рівні самостійної розробки або впевненого читання чужого коду.
- Знайомство з RabbitMQ або іншими message broker системами.
- Практичний досвід застосування архітектурних патернів у production-системах.
- Досвід роботи в державному або фінансовому секторі.
Обов’язки
- Проектування та розробка — самостійне проектування та реалізація нових функціональностей від постановки задачі до виходу в production: декомпозиція вимог, вибір підходящих технічних рішень, написання чистого та підтримуваного коду.
- Архітектура та технічні рішення — участь в архітектурних обговореннях, пропозиція та обґрунтування технічних рішень з урахуванням бізнес-контексту, оцінка trade-offs між складністю, надійністю та швидкістю розробки.
- Якість коду та процеси — проведення code review з конструктивним фідбеком, написання тестів (unit, інтеграційні, e2e), дотримання та розвиток внутрішніх стандартів якості та угод щодо оформлення коду.
- Надійність та спостережуваність — проектування систем з урахуванням відмовостійкості, налаштування логування та метрик, участь у розслідуванні production-інцидентів та усуненні їх першопричин.
- Безпека — відповідальність за дотримання принципів Security by Design на рівні коду та інфраструктури: захист від типових вразливостей, безпечне управління конфігураціями та секретами.
- Інфраструктура та деплоймент — участь у підтримці та розвитку CI/CD пайплайнів, написання та оновлення Helm charts, Docker-образів та Kubernetes-маніфестів, забезпечення стабільності процесу доставки змін у production.
- Взаємодія з командою — тісна співпраця з product owner та іншими розробниками, чітка та своєчасна комунікація щодо прогресу, ризиків та технічних блокерів, участь у плануванні та оцінці задач.
- Менторство — підтримка та розвиток менш досвідчених колег через code review, технічні обговорення та передачу знань щодо best practices.
Ми пропонуємо:
- Оплачувана відпустка: 20 днів на рік
- Оплачуваний лікарняний: 15 днів на рік
- Компенсація вивчення англійської мови
- Компенсація професійного навчання та спортивної активності
- Компенсація роботи з психологом
- Внутрішні лекції та обмін знаннями.