Разработчик компании Veeam Software по имени Андрей рассказал на «Хабрахабре», как он прошел путь от человека без крыши над головой до руководящей должности. Все это — за шесть лет и благодаря программированию.
Андрей рассказал, что в 21 год он уволился из армии и оказался в Санкт-Петербурге без денег и дома. Первую неделю он по ночам тайком пробирался обратно в свою воинскую часть, в столовой которой его кормили и давали поспать.
Через несколько дней командир поймал бывшего подчиненного, перелезающего через забор. Но вместо того, чтобы сдать его полиции, он предложил ему работу охранником в книжном магазине. Это предложение отлично подошло Андрею: к тому моменту он решил стать программистом, а для этого — найти такую работу, где будет крыша над головой, еда, книги для самообразования и время для их чтения. В итоге он несколько месяцев прожил на складе книжного магазина: там были душ, три стула для сна, множество книг и компьютер секретаря.
Начинающий разработчик освоил Visual Basic for Application — язык программирования, встроенный в продукты Microsoft Office. Благодаря этим знаниям он начал писать макросы, автоматизирующие для секретаря работу в Excel. Познакомившись с сотрудниками IT-отдела, он получил возможность изучать более серьезные языки — C++ и C#.
Параллельно Андрей читал художественную литературу, благодаря чему через несколько месяцев стал еще и продавцом в книжном магазине. В итоге из охранника он переквалифицировался в ночные продавцы. Эта работа предполагала заполнение большого количества отчетов и составление графиков — и здесь Андрей активно применял навыки программирования, чтобы максимально автоматизировать рутинную работу.
В процессе работы начинающий разработчик столкнулся с тем, что в некоторых отделах он не мог найти нужную книгу, а поисковый терминал не указывал, на каком стеллаже и полке она находится. Андрей начал заниматься решением этой проблемы, и уже через месяц на одном из отделов продемонстрировал работу своего клиент-серверного приложения.
Руководство магазина предложило ему всерьез заняться этим проектом. Закончив трудиться над ним, Андрей решил идти дальше: еще даже не составив резюме, он подал заявление на увольнение. После этого он и нашел вакансию в компании, в которой работает сейчас.
«Я начал читать о компании, чем занимается и т. п. И понял, что совершенно не понимаю, о чем идет речь. Фраза „резервное копирование виртуальных машин и мониторинг виртуальных сред“ повергла меня в шок. Но я отлично помнил выражение: „Программист — это человек, который решает совершенно непонятным вам способом проблемы, о существовании которых вы даже не подозревали“. Значит, пора стать настоящим программистом».
Андрея взяли в компанию в команду, занимающуюся пользовательским интерфейсом. В первые недели он ничего не понимал, а коллег воспринимал магами. «„Сейчас я тебе все объясню“, — сказал мне мой Team Lead, его рассказ был очень интересным и совершенно непонятным», — вспоминает разработчик. Со временем он начал разбираться в вопросе и с помощью коллег прошел три стадии развития программиста: Ctrl+C — Ctrl+V; постоянное использование шаблонов проектирования; и, наконец, написание кода, который понятен не только автору, но и окружающим.
В итоге Андрея назначили старшим разработчиком, а недавно предложили переехать в Прагу, где открывается новый офис компании.