profile
Здравей,

Аз съм Илиян

Опитвам се да разбера как работят нещата.

Продължете да четете


Относно

Както може би вече се досещате от заглавието по-горе, наистина се казвам Илиян. Роден съм в България, в град на брега на Черно море - Варна.

Започнах инженерния си път още от дете и трябваше постоянно да поправям семейния ни настолен компютър от сривове на Windows XP и Windows 7, където проблемът можеше да е или хардуерен - ROM не работи, дънната платка се изгори заради много горещите лета, които имахме в края на 2000-те, или инсталирах пиратска игра с допълнително съдържание (известно още като злонамерен софтуер). Това повтаряне на „разбиване и поправяне“ промени начина ми на мислене и подхода към проблемите оттогава нататък.


След това се записах в ПТГ Варна (професионална техническа гимназия). Не е свързано с компютри, но е в областта на инженерството. Всъщност се смятам по-скоро за инженер, отколкото за компютърен специалист.

След гимназията работех в магазин за хранителни стоки и като всеки объркан 18-годишен се чудех какво ще правя с живота си. След като разгледах всички местни варненски университети, накрая се спрях се на един, наречен *Технически университет Варна*. Заинтригувах се от изписаните специалности - главно компютърни науки и софтуерни и интернет тегнологии. След малко мислене аз избрах втората специалност. Това беше най-добрият избор който промени изцяло живота и бъдещето ми без да осъзная колко много ще ме промени бъдещето за по-добро.

Там не научих само за технологиите и теоретическата и част, но се научих как да работя с други хора в проекти, да обменям идеи със мотивирани хора, да общувам с преподаватели и асистенти по академични теми и най-важното - да стана самостоятелен. Това е смисълът на университета - да те оформи като пълноценна личност, която може да се интегрира в професионалната и социалната среда и да носи отговорност за действията си. Силно вярвам в това твърдение. Чувал съм толкова много хора (студенти), които вярват, че смисълът на университета е да сe намери работа, но този човек e или заблуден или инат, който не иска да погледне по-голямата картина в живота.

През третата година от бакалавърската ми степен (2021 г.) бях на стаж в малка местна финансова институция, където разработвахме legacy Windows 32bit за Windows XP системи във Visual Objects community edition (наричан още CAVO). През същата година намерих първата си истинска ИТ работа като DevOps инженер в консултантска фирма. Хубавото на това да си консултант е, че можеш да видиш различни компании (клиенти) с различни архитектури и начини на работа за много кратко време, но лошото е, че не си постоянен служител в тези проекти и ще трябва да научиш всички тези досадни процеси и вътрешни инструменти на компанията отново и отново за кратък период от време за следващия проект. Повярвайте ми, с времето много ще се дразните от това.

След известно прекарано време там, когато същевременно се запознавам с хората и процесите на компанията, започваше да не ми харесва фирмената култура и реших да отида другаде. През Май 2025 г. си намерих друга работа, която не беше просто работа, а промяна в средата. Трябваше да се преместя да живея в южния регион на Франция, лазурния бряг.

И историята продължава...


Вижте по-малко

Трудова история

Инженер по надеждност на обекта

Ежедневните ми задължения са свързани основно с поддръжката на вътрешни клиенти по отношение на управлението на техните продукти в облака във фазата на експлоатация (т.нар. „Day 2“ – например след миграция на продукта от локална инфраструктура към AWS).

Освен това, осигурявам съдействие при отстраняването на уязвимости, идентифицирани от платформата Wiz. В зависимост от типа на проблема (неправилна конфигурация, проблеми с контейнери, несъответствие при етикетирането/tagging), или ги отстранявам лично, или насочвам клиентите как сами да ги разрешат.

Накрая, част от отговорностите ми включва и проследяване на разходите по клиентските акаунти (FinOps) чрез инструмента Cloudability.

Постигнатото от мен до момента включва:

  • интегриране на Jira и автоматизиране на системата за известяване за уязвимости от Wiz чрез създаване на централна Lambda функция; тя, в зависимост от вида на уязвимостта, или създава тикет в Jira, или уведомява съответните вътрешни клиенти за
  • документиране на работните процедури (runbooks) и натрупаните специализирани знания в
  • дефиниране на добри практики за разработка на софтуер (автоматизирано тестване, linting, модулна структура на кода, методология за чист код).

DevOps инженер

Първият ми проект е в софтуерна компания, предоставяща услуги за глобална дистрибуция на авиокомпании. Дейността е свързана с разпространението на информационни продукти в сферата на туризма.

Екипът, в който работех, е част от отдела за резервация на билети. Заеманата от мен длъжност е „платформен инженер“ (platform engineer), а основната ми задача е поддръжката,

експлоатацията и развитието на конвейера за обработка на данни (data processing pipeline). Той отговаря

за приемането на суровите данни, изпращани от глобалната дистрибуционна система,

обработването им на няколко етапа и финалното им изпращане към клиента чрез различни протоколи за трансфер – FTP или S3.

Постиженията ми по време на работата по този проект включват:

  • миграция на наследени (legacy) Groovy скриптове към вътрешна рамка (framework), наречена „workflow“, която управлява целия жизнен цикъл на изграждане, тестване и публикуване на
  • пренаписване на системата за доставка на данни (feed delivery framework) от един-единствен Bash скрипт към набор от чисти и модулни Python скриптове, което значително подобри надеждността и възможностите за поддръжка на
  • рефакториране на Python скрипт, отговарящ за компресирането и прехвърлянето на клиентски данни от „raw“ към „source“ S3 bucket; това позволи разширяване на функционалността според нуждите на ръководството и осигури възможност за по-добро тестване преди пускането на нова версия
  • значително подобряване на вътрешната документация чрез модернизирането ѝ спрямо актуалните ни нужди от споделяне на знания и премахване на остарели
  • ръководене на процеса по миграция на вътрешните хранилища (repositories) и тези на разработчиците от Bitbucket към
  • изготвяне на концептуален дизайн за правилно извършване на софтуерни релийзи, което подобри процеса на връщане към предишна версия (rollback) и повиши доверието от страна на CAB (Change Advisory Board)

DevOps инженер

Първоначалният ми проект се фокусира върху разработването на системи за подпомагане на водача (ADAS) за мултинационална автомобилна компания.

В рамките на този проект, моята роля беше като DevOps инженер по управление на облачната инфраструктура на AWS,

където отговаряхме за поддръжката на цялата облачна платформа, включително внедряването на клиентски продукти с помощта на рамката AWS ADF, AWS Account-Vending-Machine и персонализирания REST API на AWS Control Tower.

Отговаряхме и за управлението на облачната платформа, използвайки шаблони за политики на AWS Cloudformation и всички основни ресурси.

Автоматизацията на тези процеси беше постигната чрез използването на AWS CDK Infrastructure as Code (IaaC).

Като част от моя принос към клиентските услуги, внедрих следните решения:

  • известяване за бюджетни разходи на цялата платформа с предварително определен процент на превишен бюджет за изпращане на имейл съобщения до собствениците на
  • създаване на допълнителни REST API крайни точки за Control Tower за уточняване кои новосъздадени AWS акаунти принадлежат към кой VPC.

    Там също написах логиката, при която Lambda функция проверява типа на акаунта и въз основа на това към кой VPC шаблон

  • внедрява AWS CloudFormation StackSet към съответния
  • създаване на дизайн на високо ниво на потока от данни и репликация за цялата платформа за данни

Вторият ми проект се фокусира върху предоставянето на ценна информация за подобряване на пазаруването за клиентите и създаване на програми за лоялност за известна компания от магазини Whole Foods.

Бях позициониран като Data Engineer на платформата Azure за осигуряване на целостта на данните и валидиране на данни на нивото „от суровина до източник до подготвен продукт“. За процесите на валидиране на данни разработихме рамка за автоматизация на тестове, изградена върху рамката pytest.

Потокът от данни започва, както следва:

1. Един запис от тестови данни (.avro файл) и конфигурационен файл се копират от суровия слой в Blob Storage.

2. От това събитие на копирания конфигурационен файл се извиква ADF (Azure Data Factory) конвейер, който от своя страна анализира тези тестови данни към клъстера Azure Databricks.

3. Този клъстер е отговорен за извършването на малки трансформации на данните, като например конвертиране на типа данни от avro -> parquet, промяна на имената на колоните за целите на съвместимостта и др.

4. След като трансформациите са извършени, трансформираните тестови данни се копират в изходния слой на Blob Storage.

5. Тестовата рамка чрез Azure SDK валидира данните на суровия и изходния слой, например: проверки на схемата, проверки на данните, проверки за дублиране, проверки на колоните.

6. След като всички тестове са събрани, pytest създава файл с резултати от изпълнението на теста junitxml_report.xml, който е необходим за инструментите за отчитане, за да визуализират резултатите от теста.

Предоставихме 2 различни инструмента за отчитане: Zephyr Scale Rest API и Allure.

Софтуерен инженер

Стажът се състоеше в поддръжка на наследена банкова система за клиенти от Балканите.

Системата се състоеше от настолно приложение, съвместимо с Windows XP, написано на езика за програмиране CAVO (Visual Objects).

Образование

Технически университет във Варна

Магистърска степен

Софтуерно инженерство

Завършилите магистърската програма "Софтуерно инженерство" могат да работят като приложни и системни програмисти, уеб дизайнери и разработчици, консултанти по софтуерни технологии, интернет приложения и други.

GPA: 6.00

Технически университет във Варна

Бакалавърска степен

Компютърни и интернет технологии

Предметите на професионалната дейност на инженера със специалност "СИТ" са проектиране, разработване и поддръжка на софтуерни и интернет системи и приложения, разширяване на областта на приложение на компютърните системи и мрежи и информационните технологии, успешно прилагане на съвременни и непрекъснато развиващи се технологии за интернет и разширяване, разпределена и паралелна обработка, като изкуствен интелект.

GPA: 6.00

Езици

Български

Местен

Английски

Владее свободно

Френски

Начинаещ

Сертификати

A1 German Language Certificate

A1 German Language Certificate

AWS Migration acceleration program

AWS Migration acceleration program

AWS Technical accelerated

AWS Technical accelerated

Partner Training - Gen AI & LLM

Partner Training - Gen AI & LLM

Azure Developer Associate

Azure Developer Associate

Azure DevOps Engineer Expert

Azure DevOps Engineer Expert

Azure Data Engineer Associate

Azure Data Engineer Associate

AWS Solutions Architect – Associate

AWS Solutions Architect – Associate

Проекти

Конфигурация на NixOS

Конфигурация на NixOS

Съдържа хардуерни/софтуерни конфигурации за настройване на моите лични/служебни машини.

Система за портал за докторанти

Система за портал за докторанти

Проектът разработва инженерно решение за дигитализиране на информационна система за докторанти и кандидати, с цел да бъде използвана от висши учебни заведения, която би се интегрирала в системния процес за управление и управление на т.нар. „дигитален университет“.

Приложение за географско приложение за Android

Приложение за географско приложение за Android

Информационна система, която позволява на потребителите да проверяват опасностите и рисковете навсякъде по света.

Мобилно приложение ChatApp

Мобилно приложение ChatApp

Мобилно приложение за комуникация в реално време

Управление на проекти с OpenAI

Управление на проекти с OpenAI

Приложение за управление на проекти, базирано в браузър, интегрирано с ChatGPT-3.5 за подпомагане на agile екипа да генерира автоматично заявки.

Свържете се с мен


ИЛИ