Sergei Tvorogov

Node.js разработчик
Sergei Tvorogov
Featured

Senior Software Engineer CV

Sergei Tvorogov

[email protected]
https://www.linkedin.com/in/sergeytvorogov/

8+ years of software development experience
TypeScript
Node.js (MongoDB, Redis, MySQL, Postgres),
Some Golang / C++
Java (Spring)
Amazon Web Services
12+ years of system administration (Linux, FreeBSD, Windows Server systems, various virtualization platforms — Docker, Proxmox, Xen, HyperV)

Work experience

  • Senior Software Engineer at VistaCreate (ex. Crello). May 2021 — Present.

    Full-stack development from backend (Node.js, Golang) to frontend (React, Vue) in B2B team, developing new solutions for company’s partners, code reviews.

    Technologies — TypeScript (frontend/backend), Node.js (Koa, Mongodb, Redis), Golang (for microservices, image, video processing), Frontend (React, Vue), AWS. Some Ansible, k8s, bash scripting.

  • Freelance software developer, April 2016 — May 2021.

    Various projects for regular customers — data parsers, data collection systems, development and rework of various projects — from a taxi ordering system to wholesale spare parts selling system.

    Technologies — Node.js (Koa, Express), Java (Spring), Databases — Mongodb, MySQL, Postgres. AWS (EC2, Lambda). Some C++ (OpenCV, images processing)

    System administration for different clients — various versions of Linux, Windows Server, Proxmox, Xen Server, HyperV, Asterisk, NGINX

  • Software Developer at Taksa Taxi Service. 2014 — 2016.

    Development of taxi ordering system, fixing bugs and making minor changes in Android application, parsing data, reports automatisation.

    Technologies — Java (Spring), Node.js (Express), PHP, Databases — HSQL, MySQL, Mongodb, Redis
    System administration — Debian Linux, Xen Server, haproxy

  • Programmer at JSC KAMAZ. 2013 — 2014.

    Developing plugins for CAD/CAM/CAE systems, rewriting legacy code from Fortran/Pascal to C/Java.

    Technologies — Borland C, Visual C++, Java
    System administration (Red Hat, Windows Server, Solaris, web servers — Cherokee, Apache)
Читать«Senior Software Engineer CV»

Бэкап скрипт для виртуальных машин Xen

Скрипт делает экспорт виртуальных машин и удаляет копии старше 30 дней, найдено на просторах Интернета и немного доработано. Можно указать самому какие именно машины бэкапить, добавив в массив vm_backup_list uuid нужных виртуальных машин.

Скрипт

Мои Android приложения для офтальмологии

IOL constants converter — конвертер констант ИОЛ (SRK/T, Hoffer Q, Holladay, Haigis, все можно конвертировать во все) https://play.google.com/store/apps/details?id=sergei_t.iolsconst

ELP Calculation — расчет эффективной позиции линз https://play.google.com/store/apps/details?id=sergei_t.elp

Vertex Conversion — конвертер вертексного расстояния https://play.google.com/store/apps/details?id=sergei_t.vertex

Plus / Minus cylinder — конвертер плюс/минус цилиндра https://play.google.com/store/apps/details?id=sergei_t.plusminuscyl

Diopter / Radius conversion — конвертер радиуса в диоптрии и наоборот https://play.google.com/store/apps/details?id=sergei_t.diopconvert

Sage: строим полиномы Цернике

В данной заметке, мы, забавы ради, построим в системе Sage полиномы Цернике, которые даны в виде функций в полярных координатах.

Форма и порядок полиномов Цернике (взято из книги Л.И. Балашевича Клиническая корнеотопография и аберрометрия):

 

p

 

По данной таблице можно определить номер полинома:

Читать«Sage: строим полиномы Цернике»

Расчет ELP с помощью Sage

Сегодня я покажу небольшой пример решения уравнения с помощью open source системы Sage, которая позиционируется как открытая альтернатива Magma, Maple, Mathematica, MATLAB. Система может работать в режиме интерпретатора, открывать готовые файлы, использоваться в Python коде и т.п.. Кроме того, есть облачная версия — cloud.sagemath.com, что, пожалуй, самый удобный вариант:

 

01-worksheet

 

Если не вдаваться в предметную область (а про нее здесь можно почитать здесь или копия здесь), то нужно было решить несложное, но очень громоздкое уравнение. Есть вот такой набор выражений:

Читать«Расчет ELP с помощью Sage»