Обо мне

Специализация и профессиональные навыки: Linux, Bash, C, Сборка дистрибутивов, Yum, Linux Kernel

Профессиональные цели: Стать хорошим системным инженером, быстро и небезвозмездно творить добро направо и налево.

Награды, сертификаты, портфолио, проекты: Являюсь основным разработчиком проектов: Ideco AS 3500 - производительный программный маршрутизатор, управляемый либо с помощью команд Ideco ACP, либо через Radius CoA. Держит около 2000 VPN-соединений без проблем. Начинка - сверхоптимизированное для работы с сетью ядро Linux.

Carbon AS 4 - переосмысление Ideco AS 3500. Реализован на новой платформе, во многом оптимизирован, в частности в Firewall активно используются ipset, а сам iptables доработан так, что маркировка пакетов выполняется одним правилом. Основная причина появления - сложность внесения драйверов для нового оборудования в ядро 2.4 в Ideco AS.

Carbon Reductor 1 - модуль для iptables, поставляемый либо в виде дистрибутива, либо в виде контейнера для популярных дистрибутивов, позволяющий осуществлять очень производительную фильтрацию трафика по URL. Поддерживает фильтрацию как всего сайта, так и по адресу конкретной страницы. Для провайдеров - самое оно, по крайней мере лучше чем блокировка по IP, заворачивание DNS запросов на 127.0.0.1 или хуже того прокси.

Платформа для продуктов Carbonsoft. Сейчас активно развивается, ибо идея сделать единую платформу на которую установка целого продукта (биллинга, файл-сервера, маршрутизатора, url-фильтра итд) заключается в всего лишь навсего распаковке архива за 10 секунд оказалось очень удобной.

Также активно участвую в улучшении биллинговой системы Ideco ACP 3. Последняя плюшка добавленная мной - включение удаленного помощника (по сути заморозка / разморозка ядра Linux) без перезагрузки и возможность автоматического обновления.

Имею милые бесполезные сертификаты из колледжа (УрТИСИ ГОУ ВПО СибГУТИ): 2011 — Построение коммутируемых ЛВС на основе оборудования D-Link, Удостоверение 2011 — Администрирование FreeBSD, Удостоверение 2011 — Конфигурация ОС для маршрутизаторов Cisco, Удостоверение 2011 — Web-программирование, Удостоверение 2011 — Логическое программирование, Удостоверение

Дополнительная информация: Мои любимые инструменты: - Текстовый редактор: vim - Система виртуализации: libvirt (qemu/kvm) - Shell: bash - Графическая оболчка: gnome2 - IDE для Java: netbeans 6.8 - Дистрибутив Linux: ubuntu 10.04

Мой репозиторий с полезными скриптами на bash на github: https://github.com/hordecore/useful_scripts

Ещё один мой проект: консольное меню на основе dialog, удобно использовать для создания конфигов https://github.com/hordecore/dialog_menu

Профессиональные навыки
Опыт работы
Июнь 2015 — по настоящее время
Carbon Soft
Ведущий разработчик
Екатеринбург
Ноябрь 2012 — по настоящее время
Carbonsoft
Инженер-программист
Екатеринбург
Обязанности и достижения

Обязанности:
- Разработка и вывод на рынок решения для исполнения ФЗ №149 - Carbon Reductor
- Портирование модуля Carbon Reductor с ядра 2.4 на 2.6.32

Достижения:
- Чувствую себя в С практически как рыба в воде
- Увеличил багаж знаний по сетевой подсистеме (в частности netfilter) ядра Linux
- Познал особенности компиляции модулей ядра под разные ОС (Ubuntu 10.04, Centos 6.3, Ideco ACP 3 / Ideco AS 3500 )

Февраль 2012 — по настоящее время
Carbon Soft
Программист, позднее ведущий разработчик
Екатеринбург
Обязанности и достижения

Проект Carbon Reductor: DPI для провайдеров на базе netfilter (файрвол в Linux)- match модуль с быстрым поиском- target модуль для отправки http redirect (tcp session hijack)- userspace для обновления и загрузки списков через procfs- userspace для настройки приёма зеркала трафика с коммутаторов- сборка в rpm с помощью rpmbuild (подозреваю что это жуткий костыль, но всё же)Платформа Carbon 5:Не являлся её идеологом, но в целом разделяю основную концепцию - гипервизор и хост система не столь важны, важна простая и универсальная система для управления ими, позволяющая очень простыми способами создавать/переносить контейнеры с нужными людям приложениями. Иными словами, это не столько система виртуализации/набор готовых приложений для бизнеса, сколько подход - виртуальная машина = директория, внутри которой есть всё что нужно для её работы и скрипт service, поддерживающий команды в духе build / start / stop / destroy (неважно, кем написанный) приводящий машину в действие.- автоматический установщик (от пользователя требуется только выбор диска/дисков для софтрейда)- разработка watchdog и системы диагностики- проработка концепции неконфликтующего файрвола на базе iptables/ipset для chroot-контейнеров- система сборки и выпуска обновлений, поддерживающая выпуск различных продуктов на базе этой платформы- система простого уведомления администратора по e-mail из контейнеров- решение различных возникающих проблем с сетью и ядром Linux, возникающих при использовании динамически строящегося файрвола (например возникновении неумирающих UNREPLIED conntrack для udp)- приятные мелочи для техподдержки - bash completion для собственных утилит, удобные .bashrc и .vimrc- developer-mode - разделы с исполняемыми файлами становятся git-репозиториями с автоматическим коммитом раз в 5 минут (многократно спасало от потери написанного кода)- рефакторинг системы обновления- псевдографическое меню на основе dialog- система резервного копированияПроект Carbon XGE Router 5: маршрутизатор для провайдеров на базе LinuxПожалуй одна из самых важных решённых задач - работа "из коробки" при установке на одну машину с Carbon Billing 5 (отдельный продукт - Carbon Billing Softrouter 5). То есть устанавливаем систему, настраиваем сеть, создаём тестового абонента и вуаля - мы имеем почти всё, чтобы быть интернет-провайдером.- бэкпорт исправлений в IMQ из Linux 3.13 в Linux 2.6.32 el6.- доведение accel-pppd до работы из коробки- реализация IP+Web авторизации через Radius- файрвол на базе ipset и QoS, шейперы- система управления через CoA + API и оболочка, названная xgeshПроект Carbon Billing 5: биллинговая система для провайдеров- универсальная системы синхронизации абонентов между биллингом и маршрутизаторами- поддержка обработки передаваемого snat адреса в netflow 9 (в netflow-сенсоре и агрегаторе сырой статистики)- доработки генаратора конфига dhcpПроект Carbon Billing 4: биллинговая система для провайдеров- Создание системы резервирования каналов на основе динамического NAT- Система опроса коммутаторов по SNMP- Интеграция нескольких платёжных систем- Система автоматической диагностики абонентовПомощь технической поддержке в сопровождении внедрённых продуктов компании в контексте сетевых проблем и проблем с Linux в целом

Март 2012 — Ноябрь 2012
ООО "Серверные Программы"
Инженер-программист
Екатеринбург
Обязанности и достижения

Обязанности:
- Разработка системы сборки продуктов
- Разработка платформы для выпускаемых продуктов
- Разработка системы непрерывной интеграции для ACP Ideco 3
- Интеграция популярных платёжных систем с биллингом

Достижения:
- В очередной раз значительно увеличил объем знаний по устройству ОС Linux
- Прокачал системный взгляд на разрабатываемое ПО
- Улучшил знания Bash, C, C++, ядра Linux, PHP (Bitrix, CodeIgniter), JavaScript, Delphi
- Приобретение навыков работы с системами виртуализации (Qemu/KVM, libvirtd) и их автоматизации

Июль 2011 — Февраль 2012
Ideco
Тестировщик
Екатеринбург
Обязанности и достижения

Начал свою карьеру серьёзно связанную с разработкой здесь. За три месяца работы тестировщиком хорошо выучил bash, сделал много всего, чтобы тестирование продуктов проходило автоматически и не требовало моего участия, после чего вырос до разработчика. Ещё там начал участие в разработке новой платформы для продуктов компании Carbon Soft, в которую выделился наш отдел.

Июль 2011 — Февраль 2012
Ideco Software
Инженер по тестированию
Екатеринбург
Обязанности и достижения

Обязанности:
- тестирование биллинговой системы Ideco ASR
- воспроизведение неполадок, происходящих у клиента
- разработка средств диагностики неполадок

Достижения:
- Отличное знание bash
- Первичные навыки быстрой разработки ПО
- Приобретение привычки и умения автоматизировать собственную деятельность

Март 2011 — Июнь 2011
ГБОУ ДПО СО "Институт Развития Образования"
Системный администратор
Екатеринбург
Обязанности и достижения

Обязанности:
- Техническая поддержка пользователей
- Администрирование серверов на базе Windows Server 2003 и Debian GNU / Linux 6

Достижения:
- Получение первичных навыков системного администратора

Июль 2010 — Октябрь 2010
ГБОУ ДПО СО "Институт Развития Образования"
Программист
Екатеринбург
Обязанности и достижения

Обязанности:
- Техническая поддержка работ экспертов по проверке ЕГЭ
- Техническая поддержка пользователей
- Настройка и сопровождение системы ABBYY TestReader
- Администрирование домена (Active Directory)

Достижения:
- Освоение bash-скриптинга

Май 2010 — Июнь 2011
Разные Организации
Системный администратор
Екатеринбург
Обязанности и достижения

Проработал в нескольких компаниях приходящим системным администратором, постепенно повышая практические навыки работы с Linux на серверах, начав практически "эникейщиком", закончив среднестатистическим администратором, знающим как поднять на Debian инфраструктуру для небольшого предприятия, имеющим собственную сборку дистрибутива, экономящую время на развёртывание и настройку (vagrant и подобные тогда ещё не вошли в моду).

Апрель 2010 — Июль 2010
Инженер по тестированию
Екатеринбург
Обязанности и достижения

Обязанности:
- Автоматизация тестирования
- Ручное тестирование веб-приложений
- Разработка сценариев для Apache JMeter

Достижения:
- Освоение Selenium RC
- Освоение JMeter

Высшее образование
Январь 2012 — Январь 2016
УГТУ-УПИ
Ускоренного обучения
Екатеринбург
Специализация и достижения

Не так конечно круто, как матмех - очно-заочно получаю хоть какое-то высшее на специальности "Программная инженерия"

Январь 2011 — Январь 2011
УрГУ
Математико-механический
Екатеринбург
Специализация и достижения

Направление: компьютерные науки
К сожалению так и не закончил из-за бюрократических проблем с переводом на заочку, но очень понравился факультет, уютно как-то там было.

Среднее специальное образование
Январь 2008 — Январь 2011
колл., Уральский колледж связи и информатики
Программное обеспечение вычислительной техники и автоматизированных систем
Екатеринбург
Рекомендательные письма
PHP-разработчик • знакомый

Линукс-маньяк

Письмо написано 04 марта 2015 в 07:11
Разработчик • знакомый

Гуру баша

Письмо написано 06 февраля 2015 в 17:23