Обо мне

Опытный Linux-разработчик, ищу удалённую работу. Более 6 лет разработки системного программного обеспечения, в особенности – сетевых протоколов и приложений.

В течении моей карьеры я занимался разработкой сетевых приложений и протоколов в пространстве пользователя и в пространстве ядра. Моими основными целями в разработке всегда были стабильность, производительность, безопасность и соответствие спецификациям. Часть моей карьеры была связана с разработкой встраиваемого ПО для сетевого оборудования, такого как управляемые коммутаторы и пограничные маршрутизаторы, учитывающего особенности аппаратного обеспечения такого оборудования.

Большая часть моих программ была разработана с использованием языков C, С++, но некоторые проекты были выполнены с использованием Qt/C++, Python, разнообразных скриптовых языков, таких как bash, awk или perl, и с использованием функциональных языков, например Erlang/OTP. Для разработки использовались утилиты git, GCC, GDB, Valgrind, perf и многие другие. Часть проектов, в которых я участвовал, с открытым исходным кодом и доступна на Github.

--------------------------------------

Experienced Linux developer with over 6 years of experience in system programming, especially in networking software development.

During my career I have developed kernel-space and user-space code for various network protocols. The primary aims for me in development always were the same: stability, performance, security and RFC-compliance. Part of my career was tightly connected with embedded Linux development for network equipment such as managed switches and enterprise routers with their very specific hardware.

Majority of my programs in both kernel-space and user-space have been developed in C and C++ languages, but there are some projects completed using Qt/C++, Python, various scripting tools like bash, awk or perl and functional languages like Erlang/OTP. All software was created using development tools like git, GCC, GDB, Valgrind or perf. I believe that best part of my career is related to open-source projects and can bee found on GitHub.

The most interesting technologies for me: Linux Kernel, DPDK, XDP, eBPF, Rust, Device Drivers, OpenCL. But I am open to new technologies and projects.

Feel free to contact me via email ikoveshnik@gmail.com

Профессиональные навыки
Участие в профессиональных сообществах
Опыт работы
Высокопроизводительные сетевые системы и системы хранения данных в среде Linux/x86-64
Software Engineer (Remote)
Октябрь 2016 — По настоящее время (4 года и 1 месяц)

Development of the open-source Application Delivery Controller TempestaFW - the fast and robust L7 HTTP reverse proxy server in Linux kernel space with zero-copy message modification, direct access to skbs, DDoS mitigation, response caching, load-balancing, in-kernel TLS handshake processing. Fully distributed developers team.

My most valuable contributions:

- Runtime configuration reload with zero downtime and no client connections and sessions loss;

- Session persistence for load balancing;

- Framework for HTTP reverse proxy server functional testing, written in Python;

- Numerous contributions to documentation

Российский разработчик телекоммуникационного оборудования
Software developer
Ноябрь 2013 — Сентябрь 2016 (2 года и 11 месяцев)

Embedded software development for enterprise routers and management switches.

[C][Linux][Embedded Linux][U-Boot][Yocto Project][C++][Boost][Git]

My most valuable contributions:

- DHCP server and relay implementation, using the system message queue to interact with Hardware Abstraction Layer, Control Plane layer, and other protocol modules;

- U-Boot and Linux kernel modifications to support custom boards with not reference hardware design (in tight cooperation with hardware engineers team);

- Researches of high speed network applications with kernel bypass (OpenDataPlane), a few patches was upstreamed to OpenFastPath project.

- Created custom embedded Linux distributive based on Yocto Project, upstreamed Bitbake code highlight rules to Kate text editor;

- Restored unmaintained Qt/C++ application for network equipment management, fixed all crucial and minor issues, added a few minor features.

Высшее образование
Уфимский государственный авиационный технический университет
Уфа
Факультет: Информатики и робототехники
Сентябрь 2009—Июнь 2014 (4 года и 9 месяцев)

Комплексная защита объектов информатизации