Сьогодні пропоную вам ознайомитись із історією Дмитра Москаленка. Він почав і, в принципі, й надалі працює сисадміном. Також цікавиться і на даний момент знаходиться в процесі навчання та переходу у Python програмісти.

Якщо вам цікаво, як стати адміністратором, тоді дане інтерв’ю, впевнений, буде для вас корисним.

Дана історія доводить, що навіть живучи у маленькому містечку можна вибитись і потрапити в IT.

Отже, переходимо одразу до запитань:

Дмитро МоскаленкоДмитре, з чого усе розпочалось?

Розпочав я ще в 2003 році, коли батьки подарували старенький ПК (CPU – Intel I, 133MHz, RAM – 512Mb, HDD – 2Gb, video – 8Mb).

До 2005 рорку даний комп’ютер використовувався переважно для ігор та виконання мілкої роботи: реферати, курсові, дипломи. Десь через рік, як зявився ПК, підхопив віруса. Із-за того що не було інтернета – не знав як перевстановити Windows. Довелося платити 20грн, щоб перевстановили. За цим процесом спостерігав особисто, і, як виявилось, складного нічого немає.

Наприкінці 2004 року знайомі попросили подивитись до їхнього ПК. Від пилюки почистив, кулєра змастив, почистив Windows. І по завершенню, для мене було здивуванням, отримав грошову винагороду. З того часу і почав потроху ходити та рехтувати комп’ютери.

Тобто, по-суті твоя кар’єра почалась з популярного слова “комп’ютерщик” 🙂 Таке оплачуване хоббі згодом переросло у щось серйозніше?

У 2005 з’явився нет і розвиток пішов швидше. Під кінець 2005 року звичайного Windows стало мало. З того часу почав приглядатись до Linux-подібних ОС, але ще продовжував працювати на Windows.

До 2007-2008 років хобі переросло у роботу:

В той час навчався на розробника, вчили С/С++ (від автора: детальніше про місце навчання та досвід роботи Дмитра можете ознайомитись на його профілі у Linkedin). Успіхи в навчанні були, але для себе “драйву” не відчував. В цей період почав шукати роботу. У маленькому містечку було знайти важко (Жовті Води). Проте за деякий час таки запропонували роботу системним адміном. Задача: обслуговування 30 робочих станцій.

Отже, так почалась твоя перша робота. Ще не програмістом, але ти попав у потрібну IT тусовку. Чого там навчився і, що зіграло основну роль у тому факті, що тебе взяли на роботу?

За перший місяць роботи всяке було:

  • навчився говорити з людьми; тобто розуміти їхні проблеми при роботі з ПК (працівники віком від 20 до 60 років);
  • навчився говорити НІ;
  • навчився ставити пріорітети в задачах;
  • познайомився з серверами; на той час було пару звичайних ПК, які виконували роль серверів; всі вони працювали на Windows.

Найважчим на першій своїй співбесіді – це вміння показати що ти знаєш і вмієш використовувати ці знання. На цій співбесіді (після якої і запропонували роботу) запропонували вірішити проблему: зник звук на ПК. Рішення, яке я знайшов: перемикання у нормальний звуковий порт і заміна драйвера на звуковій карті.

Яким чином у цьому всьому замішане програмування? Одразу цікаво, які можеш дати поради початківцям.

Найголовніша порада – не витрачати час дарма.

Починати розбиратись у “трендових” техенологіях варто уже зараз. Як зрозуміти що у “тренді” – сайти пошуку робіт, за що більше платять, те і головніше.

У мене почалося з того, що на 4 курсі інституту дали курсову роботу: треба було на PHP+MySQL щось для кафедри написта. За місяць “знущань над собою” щось вдалося зробити. Курсову захистив і забув. Після захисту мій знайомий, який на той час працював лаборантом (то була його одна з додаткових робіт) показав як на Django можливо було вирішити мою курсову за 20-30хв. Це у нього забрали не більше, ніж 70 рядків коду.

З того часу я намагався розібратись у мові Python та веб-фреймворку Django. Успіх був нульовим. В основному тому, що не було “пендюля”, який заставив би рухатись далі. Також були питання по самому Python. Самостійно відповідей не виходило знайти. І з людьми, яким цікавий Python та Django на той момент мені не вдалалось познайомитись. Більшість довкола писали на PHP.

Тобто ти по-суті працював сисадміном, а паралельно вивчав програмування на Python?

Час минав, організації, в яких я працював сисадміном змінювались, закривались, …

У 2012 році запропонували роботу сисадміном у Дніпропетровську. За перший місяць роботи багато що довелося вчити і розбиратись, оскільки мій ментор був не задоволений моїми знаннями. В той час компанія почала швидко розширюватись і мене кидали між проектами. Задачі залишалися майже незмінними – обслуговування ПК у офісі.

З самого початку робота не подобалась. Зате там була тусовка програмістів. Там я працював в середовищі розробників рівня мідл та сеньйор. І під час їхніх розмов я розумів, що багато що знаю. Звичайно практики використання на той час у мене ще не було.

Гаразд. Значить вже на цій роботі ти почав активніше дивитись у сторону програмування. Які були перші успіхи?

Після кількох невдалих співбесід на позицію python/Dango розробник, почав більше вивчати фронт-енд технології. Позитивного результату було більше, зявились кілька замовлень на стороні. На той час рівень доходів від роботи сисадміном в 4 рази перевищував, ніж фронт-ендщиком.

У 2014 році роботи сисадміном стало значно більше і часу на саморозвиток було недостатньо. Проте Python і Django не відкладав. По роботі все більше часу доводилось працювати з Linux платформами. Час йшов і моє прагнення змінити роботу та компанію ставало все сильнішим.

Як зявилася твоя книжка “Веб-розробка з Python та Django для початківців” одразу її придбав. Дещо нове вікрив, дещо згадав, дещо нове спробував. Одним словом: зайвою книжка та досвід не були.

Тоді ж намагався влаштуватись на роботу Python/Django розробником у Дніпропетровську. Нажаль поки не виходило, бо більшості потрібні мідли та сеньйори (від автора: така ситуацію всюди по ринку праці IT нажаль), а початківців брати не хотіли.

То ти звільнився і почав шукати роботу в ролі програміста чи пробував це все зробити паралельно?

На початку цього року (2015) було величезне бажання розвинутись і попрацювати з Python. Тогочасні мої обовязки не передбачали роботи з такими навичками. Але вдалося перейди до іншого відділу у середині компанії, в якому обіцяли роботу з цікавими технологіями. За 2 місяця роботи на новій посаді я черговий раз розчарувався у компанії та в менеджменті.

У травні місяці довелося шукати замовлення на різних фріланс біржах. Загалом, фріланс – цікава та весела штука для самоконтролю та збільшенню навичків. Спочатку брав та шукав замовлення пов’язані з Linux адмініструванням. По завершенню літа перекваліфікувався у DevOps. Працюю переважно з Python оточенням та продуктами.

З чим довелось попрацювати за цей короткий час фрілансування?

Список, насправді, непоганий вийшов:

  • Ansible, Puppet;
  • Python, Django, iPython;
  • Nginx, Apache, Tornado;
  • Gunicorn, Supervisor;
  • PostgreSQL (replications, …), NoSQL;
  • деплоймент інструментарій;
  • інструменти моніторингу;
  • віртуалізація: Docker (+ Rancher i RancherOS) (+ kubernetes), Vagrant, VMWare, Hyper-V;
  • Google Cloud, AWS, Microsoft Azure, Digital Ocean;
  • CentOS, Ubuntu.

І це все десь за пів року. Мені страшно уявити, що буде через рік 🙂

Зараз роблю DevOps у одному  стартапі Українського походження під керівництвом Максима Клімішина.

Гаразд. Я так розумію поточний твій стан: сисадмін, який тяжіє до автоматизації і скриптування в напрямку Python. Також є бажання спробувати перейти повністю веб-програмування з Python/Django.

Що порадиш початківцям, фішки, секрети?

Тут здається саме головне це – гроші. Хочеш більше грошей мати – треба більше знати та вміти. Що вчити:  тут варто орієнтуватись на ринок IT в Україні.

Ну і дуже важливо не зупинятись в жодному разі. Коли не хотілося щось робити, або не знав як робити, то просто брав і починав. Через 10-15 хв натхнення саме приходило. Тобто важливо просто сісти і розпочати.

Які ресурси регулярно відвідуєш і читаєш, щоб бути в курсі справ в IT?

Онлайн ресурси, на яких “заряджаюсь”:

Дякую за відповіді! Бажаю найближчим часом спробувати себе суто в програмуванні і визначитись, що більше подобається!

***

На цій, ще одній історії, можу підтвердити, що головне – це просто сісти і розпочати. За кілька хвилин навчання, кодування, програмування – виникнуть перші запитання, проблеми і прогрес піде. Ну і друге правило – за жодних обставин не зупинятись. Краще щодня по годині, ніж один повний день раз на тиждень 😉

Якщо маєте запитання до Дмитра, тоді коментуйте тут або зв’яжіться з ним напряму через Linkedin мережу.

Успіхів вам!

Ви уже програмуєте? Тоді сконтактуйте мене, щоб поділитись своєю історією успіху із іншими!