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

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

Техническое интервью

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

Тест состоял в создании веб-сайта, на котором был бы размещен список книг для воображаемой библиотеки. Это казалось достаточно простым: подключиться к базе данных, получить список книг и отобразить их на веб-странице с кнопками для обычных действий по добавлению книг, их удалению и обновлению информации. «Я могу это сделать», - подумал я.

Пока я сосредоточился на тесте, позади меня были программисты, которые делили свое время между работой над своими задачами и игрой с теннисными мячами особым образом: они бросали их друг в друга с большой силой, вплоть до точка, где один выстрел попал в кнопку сброса на одном из компьютеров, и один парень потерял то, что делал со своим редактором. «Странный способ работы, но прикольный, - подумал я. Я ожидал более формальной рабочей обстановки, но был приятно удивлен тем, насколько расслабленной была обстановка.

Между тем, на полпути к моей реализации я застрял. Я не мог получить свой код для печати списка книг, и на экране ничего не отображалось. «Как мне выбраться из этого?» Я поинтересовался. Я попытался отладить его, добавляя туда и сюда операторы печати, но это не сработало, и я понятия не имел, что происходит. Часы тикали, и я начинал приходить в отчаяние. «Давай, - сказал я себе. «Я не могу упустить эту возможность из-за этой проблемы. Что мне делать? Обращаться за помощью? Что, если это немедленно дисквалифицирует меня? »

Я подумал об этом еще немного. «Думаю, они помогают друг другу в работе», - рассудил я. «Ладно, ладно, я попрошу о помощи». Я позвал интервьюера и рассказал ему о своей проблеме, пытаясь объяснить все, что я пробовал до сих пор, чтобы он не подумал, что я обманываю его, заставляя дать мне ответ. К счастью для меня, он также понятия не имел, что происходит, поэтому он сказал мне, что все в порядке, и что я могу оставить все как есть.

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

Я не хотел просить дополнительное время, чтобы попытаться решить следующую проблему, так как считал это несправедливым. Я хотел играть по правилам, потому что считал, что это правильно. Как мы увидим позже, я думаю, что это решение окупилось.

Тем временем передо мной стояла вторая проблема, и я должен был что-то с ней делать. Я пролистал его и увидел, что речь идет о разборе URL-адресов из некоторых файлов журналов, поэтому набрался смелости. Я сделал свое самое убедительное лицо и сказал парню, что, хотя я понимал, что мое время истекло, решение было просто «разделить эти строки на эти символы, а затем перейти к разделению URL-адресов с использованием того или иного символа». Парень кивнул и сказал мне, что это действительно решение. Затем он сказал, что интервью окончено, и спросил меня, есть ли у меня какие-либо вопросы о компании или есть ли что-то, что я хочу добавить.

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

«Ну, теперь, когда вы спросите, да, - начал я. «Я создал это картографическое приложение, которое хочу показать вам…» Это была моя возможность проявить себя. Я набрал URL-адрес веб-сайта на компьютере перед нами и начал молиться всем богам, чтобы он загрузился без проблем. «Пожалуйста, только на этот раз», - подумал я. По мере того, как все элементы сайта загружались, мое беспокойство уменьшалось, а возбуждение усиливалось. Творение, которым я больше всего гордился, было прямо перед моими глазами и, что более важно, перед глазами человека, который решал, есть у меня работа или нет.

Я изучил все функции приложения, с энтузиазмом объясняя цель приложения, какие функции оно имеет и каких функций ему не хватает, но я знал, что мне нужно реализовать, чтобы иметь четкое экономическое обоснование.

После демонстрации он, похоже, был впечатлен Aleph Maps и дал мне за это высокую оценку, что сделало меня счастливым, что у меня была возможность запустить демо для него и продолжить. Это показало мне, что все демонстрации, которые я запускал для разных членов моей семьи и для моих друзей, были стоящими, поскольку, когда это имело значение, я мог показать, что я могу не только создавать вещи самостоятельно, но и что я хорошо объясняет.

К тому времени было около 18:00. - пора им положить конец этому, а мне вернуться домой. Когда мы вместе выходили из здания, я спросил человека, проводившего мои тесты, учится ли он в университете, потому что, возможно, он знал моего друга, который рассказывал мне об этой возможности трудоустройства. «О да, я знаю твоего друга, почему ты не упомянул его раньше?» он спросил. Я не ответил, но дело в том, что я не хотел поднимать этот вопрос и использовать его в своих интересах во время собеседования. Но в любом случае, потом не было больно. Он показал мне, как добраться общественным транспортом до автовокзала, и затем мы разошлись.

Оказавшись в одиночестве, я не мог поверить, что закончил интервью. Все, к чему я готовился за последние два месяца, прошло в мгновение ока. Больше не было внимания к мелким деталям - некоторые из них имели значение, некоторые - нет. Теперь это были я и Монтевидео, и улицы были заполнены людьми, возвращающимися в свои дома, и машинами, и ночью над городом. Я сделал это.

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

"Когда ты можешь начать?" - спросил голос на другом конце провода. Я был внутри. Да, я. Они хотели меня: парня, который почти не умел программировать, но давайте не будем об этом сейчас беспокоиться. «Они хотят меня», - сказал я себе, позволяя этому осознать. «Я в деле». Вся игра окупилась. Наконец, после всех этих лет работы, которая ничего не оплачивала, работая только потому, что люди так поступают, даже если наличие работы означало забыть о наших мечтах - наконец, жизнь начала поворачиваться и улыбаться нам, и от одного дня до затем мы смогли увидеть жизнь, которой стоило жить.

Я попросил одну неделю, чтобы переехать в Монтевидео, поэтому мне сказали, что 26 февраля будет моей датой начала. «Вы будете работать с PHP и JavaScript. Вы собираетесь зарабатывать 15 000 песо (500 долларов США) в месяц ». ПЯТНАДЦАТЬ ТЫСЯЧ ПЕСО! Это было втрое больше, чем зарабатывала моя жена! «Мы будем богатыми!» Я думал. Я собирался купить столько кока-колы, сколько захочу! Возможно, нам даже удастся сэкономить 100 долларов в месяц и когда-нибудь купить дом. Мы не могли поверить в то, что с нами происходило.

Наконец, жизнь начала разворачиваться и улыбаться нам, и день за днем ​​мы могли видеть жизнь, которой стоило жить.

Я потратил эту неделю на подготовку в JavaScript и пытался найти место для проживания в Монтевидео. Друг подцепил меня своей квартирой, так как собирался съехать после Пасхи. Арендная плата была для нас хорошей, поэтому мы решили, что примерно через месяц моя жена переедет в Монтевидео и присоединится к нам. «Квартира» состояла из одной комнаты, плюс кухня и маленькая ванная, и в ней можно было уместить только две кровати и обеденный стол. Некоторое время нас трое жили в этой комнате, но, честно говоря, для нас это не имело значения. Я бы начал новую интересную работу, и нам было бы где жить. Миссия выполнена.

Первая неделя на работе

Мой первый рабочий день начался с приятного поворота: человек, проводивший интервью, также был моим новым менеджером. Он привел меня на кухню офиса, мы сели за стол, и он начал объяснять, чем занимается компания, какова бизнес-модель и так далее. Затем он приступил к изложению на листе бумаги того, на что была похожа внутренняя архитектура, как все работает, что делает сервер, где расположена база данных и многие другие детали. Признаюсь честно: за этим было сложно уследить. Я вспоминаю, как пару раз слышал термин «производство». «Это наша производственная установка», «Вот производственная база данных» и т. Д. Я понятия не имел, что это за продюсерская вещь, о которой он все время говорил! Позже я узнал, что производство относится ко всей инфраструктуре, включая код, с которой сталкиваются клиенты и которые приносят прибыль компании.

Мы задавали пару вопросов и ответов здесь и там, а затем подошли к тому, что было для меня самой важной частью этого дня. Он посмотрел на меня и сказал мне честно и прямо: «Мы знаем, что вы плохой программист, что вы только начинаете этим заниматься, и что у вас нет опыта, поэтому, прежде чем вы даже сможете внесите одну строку кода в нашу кодовую базу, нам нужно, чтобы вы изучили эту книгу », - сказал он, передавая мне копию PHP Objects, Patterns, and Practice Мэтта Зандстры. «Вы должны знать это к следующей неделе». Как бы просто это ни было, это были одни из самых твердых, искренних и полезных отзывов, которые я когда-либо получал как программист. По сей день я благодарю его за откровенность со мной. За свою карьеру я узнал, насколько сложно найти менеджера, который даст вам такую ​​обратную связь - обратную связь, которая полезна для понимания ваших собственных недостатков, но в то же время направит вас на правильный путь, чтобы преодолеть их.

Затем он сказал мне: «Мы знаем, что вы неопытны, но во время собеседования вы показали себя человеком с отличным настроем. Вот почему мы наняли вас ». Я потерял дар речи. Мне было интересно, что я сделал, чтобы заслужить такую ​​возможность. Более того, я знал, что должен доказать, что стою того, поэтому поставил себе цель как можно быстрее освоить книгу шаблонов проектирования. Во-первых, я не мог разочаровать своего нового босса, который рискнул на меня, а во-вторых, у меня наконец появилась возможность выступить в высшей лиге на той работе, над которой я так много работал. Пришло время сиять.

«Мы знаем, что вы неопытны, но во время собеседования вы проявили себя как человек с отличным настроем. Вот почему мы наняли вас ».

Уволен через неделю на работе

В течение первой недели я изучал эту книгу так, как будто от нее зависела моя жизнь, потому что в некотором роде так и было. Я старался изучить как можно больше этих шаблонов проектирования, применяя каждый пример на практике, и старался усвоить как можно больше знаний. К концу недели я хотел, чтобы мой менеджер подошел ко мне и сказал: «Теперь вы готовы начать программировать вместе с нами». Но, как и в любой другой сказке, в эту историю нужно было внести поворот.

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

Я не уверен, что могу точно описать то, что я чувствовал в тот момент. «Почему жизнь должна быть такой?» - подумал я, чувствуя себя несколько обескураженным и беспомощным. "Что мне теперь делать?" Я попросил воспользоваться телефоном и позвонил жене. «Пожалуйста, не волнуйтесь, но у меня плохие новости…» - начал я. Я очень старался не терять самообладание, но тем временем весь мир рушился у меня под ногами. Вокруг меня приходили сотрудники из других комнат и прощались со всеми только что уволенными людьми, от чего мне стало только хуже. Тем не менее, я пытался убедить себя, что мне не следует отчаиваться. Я зашел так далеко, так что просто нужно было устроиться на другую работу в другом месте.

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

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

«Какой удручающий день», - подумал я. Я вошел в квартиру и лег на кровать, которая, к слову, была просто матрасом на полу. Я помню, что небо было серым, идеально подходило к тому, что я чувствовал. Я попытался вздремнуть, но мой разум был потерян, глядя в потолок этой пустой квартиры и думая об этом новом повороте событий. «Что, если бы меня не уволили?» "Что я сделал не так?" Я знал, что не сделал ничего плохого. Это было просто невезением, но смириться с этим было трудно.

Вдруг у меня зазвонил телефон.

«Это Альваро Видела? Звоню из Интерсис. Мы получили вашу заявку и хотим пройти с вами собеседование. Следующий понедельник тебе подходит? »

«КОНЕЧНО, ЭТО МНЕ НУЖНО», - подумал я, но вместо этого сказал: «Да, звучит здорово, я буду там». Когда я повесил трубку и положил телефон на пол, я был в шоке, не мог поверить в то, что только что произошло. Монтевидео был городом, полным сюрпризов.

На следующий день я пошел по улице и спросил парикмахера, подарит ли он мне бесплатную стрижку, так как у меня было назначено собеседование, но у меня не осталось денег. Я все еще не получил зарплату за рабочую неделю, поэтому мне нужно было сделать одолжение в обмен на выплату на следующей неделе. К счастью, он был очень счастлив мне помочь. Я до сих пор помню его теплую улыбку; он гордился тем, что помогает соседу устроиться на работу. Пока я стриглась, он поделился своей историей. Я узнал, что в начале 2000-х он и его команда были победителями какого-то мирового чемпионата парикмахеров! Я понятия не имел, что проводятся чемпионаты парикмахеров. Не волнуйся, я ему тогда тоже не могла поверить. В любом случае, постричься у «чемпиона мира» было круто, но это также означало, что услуга была дорогой - 10 долларов, если быть точным. Кажется, это немного, но имейте в виду, что в моем родном городе я мог подстричься менее чем за 2 доллара, а за 10 долларов можно было купить мне как минимум пять гамбургеров и газировку. Тем не менее, это была настоящая инвестиция для моего следующего собеседования. Однако я не мог жаловаться: совершенно незнакомый человек оказал мне услугу, когда я больше всего в ней нуждался, и это подняло мне настроение.

Настала следующая неделя, и у меня было собеседование, которое прошло отлично. В конце концов, компания, из которой меня только что уволили, называлась Live Interactive, которая была хорошо известна в Монтевидео как одна из крупнейших интернет-компаний в стране. Это означало, что пришедшие оттуда программисты пользовались уважением. Излишне говорить, что я получил работу. Зарплата была не такой уж и большой, но план переезда в столицу остался в силе. Неплохо для моих первых 10 дней в Монтевидео.

Заключение

В общем, мой план сработал, и вся моя подготовка и учеба окупились. Я прошел первое собеседование программистом, а потом прошел его. Меня наняли и уволили за одну неделю, но я не сдался и пошел на второе собеседование, получив новую должность на второй неделе в Монтевидео.

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

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

Но дело было не только в навыках; Я также должен был верить в себя, и эта уверенность в себе помогала мне всякий раз, когда я сталкивался с проблемой, которая казалась непреодолимой горой.

Между тем, скромность всегда держала меня в узде, напоминая мне, что то, что я только что поднялся, было всего лишь маленькой вершиной среди многих, на которые мне еще предстояло подняться.

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

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

Если вы хотите следить за новостями и оставаться в курсе, не забудьте подписаться на мою рассылку.

Благодарности: иллюстрацию вверху сделал мой друг Себастьян Навас. Если вы хотите увидеть больше его работ, зайдите в его профиль на Deviantart: https://polacostyle.deviantart.com или свяжитесь с ним через Facebook: https://www.facebook.com/sebastian.navas. 16