ccppprogrammerccppprogrammer

Sergei Lavrov

PostgreSQL, VoIP, C++, Golang, Angular, DevOps · Администрирование · Телеком · Ведущий (Lead)
От 5000 $ · Открыт к предложениям
Опыт работы: 10 лет
Регистрация: 17.11.2018
Последний визит: 8 месяцев назад
Местоположение: Россия, Москва
Профессиональные навыки: PostgreSQL · Golang · Angular · C++ · Devops
Войдите, чтобы посмотреть контакты пользователя

Участие в профессиональных сообществах

Опыт работы

  • Ведущий оператор в сфере телекоммуникационных услуг
    Москва · От 100 до 1000 сотрудников
    Senior PostgreSQL Database Administrator, Senior PostgreSQL Database Programmer
    Февраль 2011 — По настоящее время (10 лет)

    Experienced Senior Database Administrator, Senior Database Developer with over 10+ years of experience in PostgreSQL. Strong knowledge in designing, coding, testing and profiling PostgreSQL database in the highly loaded environment. Experienced with sharding and High-Availability (HA) techniques based on PL/Proxy, PgBouncer, Pgpool-II, repmgr, Patroni. Strong knowledge on PostgreSQL contribs (hstore, ltree, intarray, dblink, pg_trgm, pgcrypto, etc) and on internals of PostgreSQL itself. Experienced in PostgreSQL profiling tools like pg_stat_statements, pg_stat_kcache, amcheck, amcheck_next, pg_metricus, pg_badger and others. Good experience in PL/pgSQL, PL/SQL and ETL scripting and query optimization.

    • Responsible for providing 24x7 support for production PostgreSQL databases (80+ servers, 10000+ Databases, 500Tb+ data) for different cloud products (OCS, VoIP, CRM, Call Tracking, DNS)

    • Migrate database schema, business logic (PL/SQL to PL/pgSQL), functions, triggers, views, data from Oracle database to PostgreSQL database

    • Migrate PostgreSQL database schema and data from regular tables to partitioning tables (triggers, pg_partman, pg_pathman, built-in)

    • Migrate PostgreSQL databases from different replication systems (londiste, pglogical, streaming replication, logical replication)

    • Upgrade PostgreSQL databases and application tools from/to PostgreSQL versions 9.0, 9.1, 9.2, 9.3, 9.4, 9.5, 9.6, 10, 11, 1 with minimal downtime

    • Create plan for backup, recovery, disaster recovery, and fault tolerance of databases in co-location and multi-datacenters environment (barman, pg_basebackup, PITR, ceph, repmgr, PgBouncer)

    • Create monitoring center, new monitoring metrics, log analysis of PostgreSQL databases (Zabbix, Grafana, Prometheus, VictoriaMetrics, mamonsu, pgbadger, powa)

    • Migrate OLAP data to Greenplum Database and PostgreSQL materialized views

    • Create and maintain staging databases environment as well as hot standby databases (ansible, barman, repmgr, various scripts)

    • Stress tests of application releases in development cycle, PostgreSQL versions and new hardware (pgbench, Tsung, JMeter)

    • Provide technical resolution to PostgreSQL database related problems (pg_stat_statements, pg_stat_kcache, amcheck, amcheck_next, pg_metricus, pg_repack, execution plan analysis)

    • Maintain very large legacy code written in PL/pgSQL, develop database architecture, regular review a new code

    • Recruit, hire and train new employees

    Technology stack:
    • DATABASES: PostgreSQL, MongoDB, MySQL, Redis
    • BACKUPS: pg_basebackup, pg_probackup, barman, WAL-G, pg_arman
    • REPLICATIONS: Skytools, londiste, pglogical, pgq, streaming replication, logical replication
    • MONITORING: prometheus, grafana, VictoriaMetrics, pgbadger, powa, pgbench, pg_stat_statements, pg_stat_kcache, pg_metricus, amcheck, pg_repack
    • CONNECTION POOLERS: PgBouncer, odyssey, pgagroal
    • HIGH AVAILABILITY (HA): repmgr, PostgreSQL Automatic Failover (PAF), Patroni, Pgpool-II, PL/Proxy