Глава 3. Мой путь

Глава 3. Мой путь

zxCrypto

Это вольное продолжение статьи "Я очень хочу прогать", в котором я хочу рассказать о своей истории становления в IT.


Я родился в начале 90-х в бедной семье в маленьком захудалом городке... кхм, думаю можно промотать лет на 12...

Подросток

Бабушка купила мне телефон Alcatel. 2 дюйма экран, полифония, j2me, мм, верните мне мой 07-й. В общем я всегда был любопытным, поэтому убил его софтово через 2 дня после покупки, попыткой переименовать mp3 файл в m3u (формат плейлиста) и запустив. Интересно было посмотреть на сообщение об ошибке. В общем файл не открылся, но телефон окирпичился. В магазине поменяли его по гарантии, но тетка продавец убедила меня взять Moto Razr L7 в замен. Ох как я ненавидел тогда моторолы, примерно как сейчас фанату эпл всучить какой нибудь сяоми.

К счастью, детский мозг не смог ничего противопоставить взрослой красивой 20-летней тетке и это стало моей отправной точкой. Компа у меня тогда не было, а вот gprs-интернет на телефоне уже был, так что я быстро обнаружил что с этой моторолой можно вытворять совершенно безумные вещи, какие то прошивки, опкоды, темы-оформления, какая-то нереальная кастомизация и половина из этого как то перепрошивалась прямо с самого телефона.

Так я понял что это мне безумно интересно, а через какое то время у меня появился комп (в котором я за неделю 3 раза убил винду) и музыкальный Moto EM-30 (версия Moto E8 для нищих). Интересный факт что моторола тогда разрабатывала что-то вроде андроида первой версии (не сенсорный). Их система была построена на линуксе и позволяла писать и устанавливать сторонние программы под неё (только не официально, без документации, путем реверс-инженеринга. И да, DOOM там конечно запускали). Для меня это был недостижимый уровень, но я баловался кастом. прошивками и меня дико бесило что лучшая из них почему-то дико тормозила. Я решил собрать свою прошивку, но мне для этого нужен был настоящий линукс, т.к образ был запакован в виде squashfs 2.1 файловой системы и это нельзя было перебрать через cygwin (эмулятор линукса для windows до появления нативной linux subsystem). Возможно я гений, но каким то чудом я понял что тормоза появляются когда в прошивку зашито много измененных файлов. Отличало измененные файлы поле "время создания", которое было пустым у всех файлов кроме измененных. Использовав это знание я собрал свой билд, который не тормозил, был минималистичен, но полон фич и всем безумно нравился. Кажется в тот момент я понял "Нормально делай - Нормально будет". Так я доминировал на форуме пока не сменил телефон на какой-то андроид (версии 1.6).

Технарь

В 14 лет меня не пустили в 10-й класс из-за плохой успеваемости (да и в целом не любила меня директор) и я пошел учиться в колледж, зная что буду программистом (или кем получится, т.к в то время программисты еще считались каким-то отребьем, а все пытались стать юристами).

Толку непосредственно от колледжа я получил мало, но где-то к 3 курсу я выйграл пару областных олимпиад по сетям и в целом зарекомендовал себя как чувака который шарит, поэтому до меня особо никто не докапывался и половину предметов я получал автоматом, ходил в технарь как в коворкинг, занимался своими делами и читал хабр. Тогда я много возился с линуксом и писал код на PHP + JavaScript. Тогда же я понял что фронтенд мне интереснее, и что я люблю делать интерфейсы и всякие эффекты, а верстка сайтов буэ.

На 3 курсе устроился работать в сервисный центр + взял на поддержку несколько школ. Два интересных факта:

1. Работу я не искал, меня сам нашел владелец СЦ, он пришел в технарь с запросом типа дайте мне толкового пацана, ну они дали мой Контакт. Я как раз в этот день прогулял пары и чувак приехал ко мне домой.

2. До этого приходил странный зализанный типок с макбуком, выглядел как гость из будущего в нашей деревне. Обещал золотые горы (типа 40к в месяц, когда у моей мамы была зп 12к) и типа не нужно ничего знать, всему научим, просто вы должны быть не тупые. Разработка под iOS. То были времена где то самого первого айпада, ни у кого в городе кроме владельца завода тогда не было айфонов, все ходили с нокиями. Мы подумали что это какой-то развод и нас продадут цыганам наверное, поэтому он ушел ни с чем. Сейчас я понимаю что этот чел хотел и понимаю какую возможность я вообще-то упустил.

Проработал так в СЦ и школах до призыва в армию. Технически меня уволили буквально за неделю до призыва и это было первое мое увольнение, которое научило меня тому, что быть крысой плохо. А дело в том что пока я работал в СЦ у меня набились клиенты которые звонили лично мне и я обрабатывал их в выходные или после работы. Бывало так что приходили люди, я договаривался с ними на услугу (допустим настроить роутер дома) на следующий день от фирмы, но они просили просто приехать после работы. Технически я уводил клиентов, хотя сам толком не понимал этого, поэтому когда босс прознал он просто выгнал меня ссаными тряпками. На самом деле мы разошлись мирно, но осадочек остался.

В армии я прослужил 1 день и вернулся (это уже другая история, в которой я получаю бесплатные права категории Ц от армии и так и не ухожу служить, хах), а по возвращении нашел работу админом последней мили в аутсорсинговом колл-центре (это такие ребята, которые продают операторов компаниям типа МТС, т.е когда вы звоните в какую-то компанию, то вероятно общаетесь даже не с сотрудником этой компании).

Колл-центр

Это место я буду любить и ненавидеть до конца жизни. Несколько офисов (в последствии в нескольких городах), около 300 рабочих мест (одни тетки), полное отсутствие какой-либо внятной инфраструктуры и бедный телефонист-админ в Екб отвечающий за телефонию и основные сервера. Сами точки были раскиданы по областным мухосранскам, где можно платить краюшкой хлеба вместо зарплаты. Точки контролирует обезьяна вместо админа, решающая все проблемы фразой "перезагрузи 3 раза и потом приходи". Ничего не работает, всё в говне. Собеседование проходило с тех.диром по телефону, полный карт-бланш на любые действия, текущую обезьянку надо уволить через месяц-два. Ок справимся. Текущий админ быстро понимает зачем я здесь и начинает саботировать работу: не выдает доступ никуда, подставляет, вырубает компы, общается через зубы, пытается унизить на людях, жалуется на любые косяки. А я привык свои проблемы решать самостоятельно, даже мысли не возникло что это вообще не норм ситуация. Просто взял две свободные машины, ушел в отдел "исходящая связь", на одной поднял виндовый домен (сервер управляющий другими пк в сети), другая личная и для тестов. На файрволе (типа роутера, только целый сервер и очень умный) воспользовавшись моментом пока админ отошел, поднял привелегии одному из сотрудников и через этот аккаунт уже контролировал сеть. Потихоньку за пару дней перевел компы в другую подсеть в новый домен, сначала в одном отделе, потом в другом и в третьем. Следом поднял свой файрфол, перенес туда юзеров, права и правила (операторам приходилось ограничивать доступ похлеще роскомнадзора, который тогда ещё не родился) и как-то так вышло что за пару недель я захватил всю сеть, пока старый админ этого даже не осознал. Выгнали его по итогу недели через две. В то же время в коллективе директоров происходил аналогичный захват власти, т.к HR-менеджер, супер жирная, но забавная баба каким то образом отжала этот офис, но произошло это через открытие и закрытие доп. офиса, на которое приезжал главный админ. Он по всей видимости засчитал мне испытательный срок, т.к фразу "ты меньше месяца работаешь, а ощущение что уже пол года" я не забуду никогда. Мелочь, а мотивирует выкладываться на полную до сих пор. Тогда я отметил и понял что в целом люди все делают довольно посредственно, и если просто стараться чуть качественнее других, то это капец как замечают. Спойлер: это правило меня ни разу не подводило, но важно "продать" это, т.к можно сколько угодно упарываться там где это никто никогда не заметит, а потом быстро разочароваться в жизни.

Дальнейшие примерно 3 года я развивался, развивались офисы, открывались и закрывались, было пару напарников. Именно тогда я осознал насколько тяжело найти нормальных людей. Не каких то супер профи, а просто толковых ребят которые готовы учиться, стремятся к новым знаниям и мечтают о развитии. Тогда я думал что им не хватает предметных знаний и опыта (хард скилов), но сейчас мне абсолютно ясно что им всем не хватало именно софт-скиллов. Гибкие навыки это супер важно ребят, не забывайте о них.

Так продолжалось пока дважды не поменялся техдир. Последний с кем я работал видимо пришел из гос.служб, т.к не сильно отличался гибкостью мышления, стремился все формализировать, ввел кучу каких то дурацких ритуалов, обложил меня бумажками и забрал всю свободу (чуть ли не посрать сходить надо было согласовав с ним). Плюс добавились какие то дебильные штрафы, например штрафы за то что ночью работают машины на которых не работают операторы. Так я во первых начал автоматизировать появляющуюся рутину, а во вторых решил сменить работу, т.к тут дошел до потолка и все равно заскучал. Но главное - я хотел уехать подальше из своего жопосранска. Поросенку конечно больше хотелось сесть на трактор и свалить из рашки, но отсутствие военного билета и даже приписного, военком на хвосте и в следствии невозможность получить загранник накладывали ограничения. А еще английский ни к черту, шарага вместо образования, отсутствие опыта в программировании. Короч решаю переехать в какой-нибудь хотя-бы-не-челябинск. Продаю свое ржавое ведро, увольняюсь с работы и тикаю з городу. Перед увольнением, пока шла отработка, накидываю какие-то простые штуки, типа виджета календаря (на jQuery тогда еще писали), MVP-будильник, какой то REST поверх Flickr API и наверное всё.

Фронтенд

Нормальные люди наверное что-то планируют. Как минимум нормальные люди проводят какой то ресерч, получают офер, снимают жилье и только потом едут. Но это чёт сложно подумал я, уж на месте как-нибудь разберёмся, поэтому я просто доверил выбор города другану, с ним же переехал, кое-как заселился в самом ужасном районе и начал искать работу. Ха-ха, внезапно оказалось что джуны никому не нужны, а платят им ну как раз что-бы снять самую дешевую квартиру + мин. продуктовая корзина чтобы не сдохнуть от голода. Деваться некуда, будем набивать опыт. Друг с которым я приехал уехал через полтора месяца, "не выжил", я съехал в более маленькую и дешёвую квартиру в доме на 9-квартир в каком то СНТ, и устроился работать в какую то мутную студию, которая разрабатывала сайты в свободное время от производства каких-то тортов или цветов, уже не помню. Ребята были странные, работать с ними мне не нравилось и перспектив я не видел, т.к чувствовал себя единственным умным человеком среди каких-то имбецилов. Проработал там меньше месяца, паралельно искал варианты получше, нашел другую студию, что располагалась прям в квартире у СЕО. Но чуваки показались приятными. С прошлой студии я тупо сбежал даже не требуя от них зарплату за те пару недель что у них проработал, но и код что я не дописал им не отдал так как работал на личном нотике. В другой студии было прикольно, но платили гроши и сама студия едва держалась на плаву (в какой то месяц СЕО продал машину чтобы расплатиться с разрабами). Так что проработав там пару месяцев нас всех собрали в пятницу и дружно выгнали. Тем не менее в этом было два плюса:

1. Я обзавелся собутыльниками, во всяком случае как минимум одним;

2. За день-два до этого мне написали из другой компании, но я отказался (зря) т.к планировал закончить текущий проект. Так что я просто написал им и договорился на встречу на следующей день.

Через где то недельку я уже работал в этой (другой) компании. Дела у меня к тому моменту шли уже совсем погано, накопления закончились и я впервые в жизни попросил маму занять мне 4к на еду. А на следующий день СЕО компании выдал мне зп за отработанные несколько дней и это было 13 тысяч рублей, сумма которую я вряд-ли забуду, т.к тогда это было сверх актуально и очень неожиданно (на всех работах прежде были задержки или платили через месяц). А так же вселяло надежды на светлое будущее.

Кроме того ещё через день владелец прежней студии выдал мне долг за отработанные часы, так что я буквально впервые в своей жизни почувствовал себя в достатке. Ну типа смог позволить себе настоящий, мясной, а не куриный фарш :D

Где-то тут начинается мой настоящий опыт фронтенд разработки.

Однажды примерно в этот промежуток времени мне написали какие то чуваки с интернет-магазином на Битриксе, им нужен был jQuery скрипт для lazy-load подгрузки товаров на страницу. Задача супер простая подумал я и сделал даже не за деньги, а скорее из интереса. Потратил пару часов на разработку и пару часов на доработку, заработал что-то около 4к рублей, но самым приятным было то что чуваки сказали что до меня 7 разрабов отказались от задачи т.к не могли понять что от них хотят. Я думаю эти разрабы просто не могли оценить задачу тк не вникли в бизнес логику этой задачи. Многие смотрят на задачи с позиции ТЗ ("мне сказали сделать вот это вот так"), вместо более гибкой работы без ТЗ ("бизнесу нужно что бы тут можно было нажать сюда и увидеть это"). Технические задания всегда кривые, так как их зачастую составляют люди очень далёкие от специфики реального кода и они могут описывать одни простые вещи очень сложно, а про другие сложные моменты просто забывать. Я никогда не любил работать по ТЗ и всегда говорю что мне ТЗ не нужен.


Конструктор сайтов Flexbe

Маленькая продуктовая компания, с настоящим офисом в центре города в составе 5 человек, где сам СЕО разработчик, его супруга дизайнер, пара разрабов и один чувак на техподдержке. И несколько тысяч активных клиентов, реально любящих продукт. Упор на качество и простоту работы для клиента, подход к продукту со стороны логики дизайна, а не программистов.


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


Первые несколько лет я испытывал синдром самозванца, постоянно думая "ну вот сегодня то они все наверняка поймут что я нихера не знаю и не умею прогать".

СЕО-программист с какой-то невероятной смекалкой, к тому же перфекционист, лютейший кошмар, как мне тогда казалось, так как в этом случае не работают фразы типа "это нельзя сделать" или "это очень сложно реализовать", так как он находил решения любых проблем и за 10 минут выкатывал рабочий MVP. Сложно переживать этот позор когда ты думаешь что проблему нельзя решить, а кто-то решает её за 10 минут. Так он научил меня не сдаваться даже в самых сложных ситуациях и находить какие то неочевидные решения. Вторым важным моментом было отношение к продукту. Практически все с кем я работал до этого относились к любым задачам примерно как "надо сделать чтобы как-то работало" или "надо сделать чтобы заказчик отстал", но тут это было "надо сделать чтобы идеально работало, не имеет значения какой ценой". Это приводит к усложнению бизнес-логики (а за ней как правило тянется и усложнение логики интерфейсов), но на выходе мы получаем классный продукт, который понятен и нравится нашим клиентам. Третий момент, неотступность. До этого задачи типа "отредактировать 200 файлов вручную прям на боевом сервере" или "написать двойную логику для поддержки двух форматов с конвертацией на лету + постепенная конвертация миллиона записей в прод. базе без остановки сервиса" казались чем то невозможным, просто невыполнимым или неоправданно сложным, чем то вроде операции на открытом сердце, но начиная делать подобное ты сполна понимаешь смысл поговорки "глаза боятся, а руки делают". Сейчас меня мало что может напугать и остановить, почти все кажется реализуемым, вопрос только во времени и следовательно целесообразности реализации той или иной штуки. Были разные ситуации, например какое то время мы не могли увеличить объемы хранилища для криентских файлов, так как это требовало отключение сервиса, а место заканчивалось и мы спокойно уходили на обед зная что в 17:00 все упадёт если срочно не придумать что-то. Потом приходили и как-то освобождали место ещё на пару дней. До этого у меня от подобного случилась бы паническая атака, но тут я натренировался спокойно относиться к подобным дедлайнам.

И крайне важная истина что я понял для себя тут - важно окружать себя людьми которых ты можешь брать себе в пример, у которых тебе будет чему учиться. Чем лучше твое окружение, тем лучше становишься ты сам.

В общем именно здесь я вырос от уровня Джун до уровня сеньор тимлид за счёт:

1. Окружающих меня людей и наставников

2. Самостоятельности, смелости принимать решения

3. Страха показать профнепригодность

4. Реального интереса к тому что я делаю, т.е продукту и технологиям

5. Целеустремлённости и желания стать лучше

6. Коммуникативных навыков, умению договариваться, слушать, отстаивать свою точку зрения

7. Участие в максимально сложных / не типичных задач


Крипта

В начале осени 21 года знакомый чувак сказал мне "смари, нфт, минты, заработаешь на бмв, погасишь ипотеку". Через какое-то время он же говорит "надо выяснить как там работают смарт-контракты, сделаем нфт проект". Ок, заинтересовал, разбираюсь. Влился, показалось прикольно, считаю теперь это своим хобби. За пару недель почти полностью разобрался во всем процессе минта на эфире, поигрался в тестнетах, заинтересовался IDO и токенсейлами, начал писать каких-то бесполезных ботов, толком нифига не заработал ни на чём. Проект так же не взлетел, оказалось нужен очень мощный маркетинг и большие бюджеты, а возможно просто какая-то невероятная удача. Под новый год запустил телеграм-канал, начал писать свои заметки про код, крипту, скам и прочее. В январе бахнули сейл в продакшне для tern.crypto. Получил пару оферов по работе в крипте. Сейчас началась война и мне немного не до крипты, совсем нет настроения заниматься ничем, надеюсь скоро пройдёт.


Что дальше?

Я всегда буду расти и развиваться, я не могу застыть на одном месте, мне просто становится скучно и начинает казаться что от меня уезжает какой-то поезд, а я за ним не успеваю.

Но сейчас главный приоритет для меня - переезд из России. В этой стране я не вижу для себя нормальных возможностей, не могу тут дышать спокойно. Поэтому буду искать способ уехать в хорошее место на постоянную основу.


Спасибо за внимание ❤️

Присоединяйтесь в мой канал

Report Page