Илья Леонтьев идет давить Питона

Жил был один программист-либерал по имени Илья. Мордор щедро оплачивал его фриланс-услуги по 1С, в размере 2500 рублей в час.

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

И поэтому задумал этот программист уехать за границу с женой и ребенком. Причем не только из-за того, что в России человеку не дают жить «свободно». Илья считал, что его не ценят. Работая в 1С, он получает намного меньше, чем мог бы получать в мире большого заграничного IT.

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

Но для этого нужно было сначала изучить язык программирования. Первой попыткой стала Java:

Было изучено много уроков в JavaRush, язык освоен, но появилась проблема трудоустройства. Как говорится, 30-летний джун в Java оказался не востребован.

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

Но давление Мордора не ослабевало. А цифры доходов true-программистов все также давили на сознание.

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

Разместил резюме, ходил на собеседования. И вот, когда надежда и деньги в подушке заканчивались, его взяли Джуном с окладом 120.000 рублей. Так что мечта Ильи о настоящих больших зарплатах начала сбываться. Глядишь, скоро станет true-программистом и сможет уехать за границу, как мечтал.

Вот только одно не учел Илья. Мир изменился и жизнь за границей может оказаться не сладкой. В USA предчувствие гражданской войны, Германия будет замерзать без российского газа, в Израиль его не возьмут.

Так что как бы через 10-20 лет не пришлось бы ему заново изучать 1С и проситься на Родину. Но говорят, вспоминать не изучать, так что будет полегче.

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

Взяли, кстати, его после этого эпичного собеседования:

Собеседовавших было двое.

Теоретическая часть длилась час двадцать.

Начали за здравие: что такое изменяемые типы, что — неизменяемые. Это спрашивают всегда.

Затем — какие контейнеры данных бывают (списки, множества и т.д.)

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

Спросили, чем отличаются списки от массивов.

Спросили про контекстный менеджер. Попросили на бумажке написать код чтения из файла с помощью контекстного менеджера. Затем то же самое — но через блок исключений.

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

Дальше — базы данных.

Надо было нарисовать схему таблиц для книжного магазина. Книги, авторы, заказы… Обозначить ключи, стрелками все соединить. Что такое primary key, foreign key. Можно ли в primary key поместить null.

Потом надо было на листочке написать запрос, который соединит три таблички и сгрупириует их по author_id.

Затем началась ассинхронка… Спросили про основные термины asyncio. Чем отличается от threading. Написали на бумажке код, и я должен был сообщить, какой будет вывод у всей этой красоты (ответил неправильно, потому что эту тему еще глубоко не копал).

Спросили, что я знаю про Kafka (тут порадовать их также было нечем 🙂 )

Напоследок спросили что-то про Docker и Git, но я уже не помню, что.

Затем задача.

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

Для n = 3 последовательность должна быть такой:

3 2 1

3 2

3 1

3

Для n = 4 — такой:

4 3 2 1

4 3 2

4 3 1

4 3

4 2 1

4 2

4 1

4

Оставили меня одного, короче, а я сидел, и писал на листочках.

Эта задача взорвала мне мозг )

Целый час просидел, но так до истины и не докопался.

Честно скажу, в какой-то момент хотелось просто встать, попрощаться и пойти домой )

Но было стыдно, и часть меня все же надеялась найти решение.

Спустя час я показал свои наработки )

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

И чувствуя себя тупым, отправился домой.

Конец.

2.6 5 голоса
Рейтинг статьи
В этой статье выражено личное, частное мнение автора, которое не является призывом или рекомендацией и может быть ошибочным! Автор настоятельно не рекомендует и даже запрещает читать этот блог. Возрастное ограничение 18+.
Автор не пытается оскорбить чьих-либо чувств, или разжечь ненависть. Все персонажи и описываемые события являются вымышленными. Любое совпадение с реальными людьми или событиями, является случайностью. Статья носит исключительно развлекательный характер. Все картинки, видео и фото отредактированные и не настоящие, весь текст является вымыслом (включая названия, имена, адреса), в нем нет ни слова правды и все это преследует лишь одну цель – поднять настроение.

Вам может также понравиться...

Подписаться
Уведомить о
guest

71 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
bob32
bob32
2 лет назад

А что тут эпичного ? Перебор подмножеств, обычные вопросы по бэкенд разработке, знании базы языка, современных инструментов (git, docker ) и архитектурных подходов (Кафка) Вполне нормальное собеседование.

bob32
bob32
2 лет назад
Ответить на  fixin

Для новичков возможно. После 2х-3х лет опыта в данной сфере — не проблема. Его гоняли, т.к очень много нынче кто степики и прочие курсы по Питону проходит и ломится в IT. Просто механизм фильтрации тех, кто серьезно подошел и кто на волне хайпа подался.
Заодно собеседование дает понимание что нужно знать.

Serg
Serg
2 лет назад
Ответить на  fixin

Ну нет, 10 лет опыта с условным c++ не говорят о том, что человек начнёт быстро писать на условной java с нормальным качеством.

Павел
Павел
2 лет назад
Ответить на  fixin

Не будет он писать вернее. Не знает типов и структур данных, паттерны. Многопоточность. Архитектура приложен й, вэб, протоколы, работа браузера, dom. И т.д. Сплошные абудевдуфы

Serg
Serg
2 лет назад
Ответить на  fixin

Вернее, но ведь человек с 10-летним опытом IT не пойдёт джуниором. Вообще, мой посыл такой, что собес нужен всегда, хоть бы и 10 лет релевантного опыта.

Serg
Serg
2 лет назад
Ответить на  fixin

Потому что джуну много не платят. Сменить стек можно, но надо сначала подкачаться самостоятельно, а потом приходить уже на мидла.

Павел
Павел
2 лет назад
Ответить на  Serg

А куда ему деваться? 1ц это крайне специфичная и узкая хреновина. Выходя за нее ты по сути сползаешь на уровень школьного паскаля в плане знаний. Цикл по i-тое и j-тое по двумерному массиву с выводом на экран. Это все что сможет выдавить из себя типовой 1с-ник. И левое соединение двух табличек. Причем табличек готовых которые ему dba нарисует. Создать таблички и адекватно их связать в sql studio 1с-ник уже не в состоянии. Про какие алгоритмы Осипов вещает… Вся жизнь типового 1с-ника — обойди рекордсет или коллекцию, накопи сумму по полю, вычти из нее другую и выведи в репорт

bob32
bob32
2 лет назад
Ответить на  Serg

Начнет. Если 10 лет нормального опыта, то перейти с С++ на любой другой язык не проблема. Многие вещи из других языков С++ разработчики и так у себя обычно реализуют, так что перейти на Java быстро.

Serg
Serg
2 лет назад
Ответить на  bob32

Именно быстро на уровне мидла — ну сомнительно. Специфика у них другая, надо ментально перестроиться. Безусловно, всё это можно освоить без проблем, но не так уж быстро это будет.

Павел
Павел
2 лет назад
Ответить на  fixin

30-летний коде-манки уровня «хело волд» без опыта продуктива в тру-языках — такое себе приобретение. С тем де успехом можно было студента профильного взять. Ты как типовой 1с-ник под «любым языком» скорее всего понимаешь базовые конструкции языков — создание сущностей, циклы, ветвление. Это и так одинаково на всех языках поактически (особенно си-образных) — цена этому 0 рублей 00 копеек. В другом проблемы — типы и структуры данных, паттерны, ci\cd, многопоточность, асинхронность. А у 1с-ников до сих пор вершина прогресса — использование json в рамках http

Павел
Павел
2 лет назад
Ответить на  fixin

Ты годами правишь формочки и обмены между торговлей и бухгалтерией. Какие в этом «годы мышления»? Это время выброшенное на помойку. Типа аптеку сторожить

Павел
Павел
2 лет назад
Ответить на  fixin

Полистай свой собственный сайт за последний месяц

Павел
Павел
2 лет назад
Ответить на  fixin

Когда тебе понадобилось — ты пошел и скопипастил кусок кода сл стаковерфлоу

klopik
klopik
2 лет назад
Ответить на  Павел

первые три щас уже и студенты без опыта знают, паттерны синглтон либо фабрику — все пишут. Тем более это все реалезовано уже в том же Спринге — синглтон + прототип + фабрика + адптер + прокси. Вот про многопоточку — ее спрашивают, но мало кто на ней работает и мало что на ней пишется в чистом виде — типа там применять синхронайст и нативные методы Обжекта — всякие там вайт и нотифай. Это все чисто теория. Честно говоря, ни разу не видел приминения в чистом коде в приложухах многопоточности. Но то что 1С — отсталые да. Развития там никакого, а… Подробнее »

Павел
Павел
2 лет назад
Ответить на  fixin

В 1ц нет работы с субд. Кого ты продолжаешь лечить? Стуктуру полей объекта ты размечаешь мышкой, ты даже PK и основные индексы сам не проектируешь — за тебя платформа все решает. Запросы — тоже — тебе доступен кастрированный оператор select. Всё. Никакими «специалистами» по бпзам данных 1с-ники не являются. Не люби все мозги

Павел
Павел
2 лет назад
Ответить на  fixin

Так ты ее не выбираешь по сути. Все однотипные таблицы устроены в 1ц одинаково. А возможностями субд 1ц как платформа пользуется на 10%, а 1с-ник на 0,00010%

Павел
Павел
2 лет назад
Ответить на  fixin

Нету в 1с «сложных данных». База 1с это просто помойка из однотипных табличек. Нету ни вьюх ни даже FK — т.е. модель ER вообще не собрать в субд — она в пофигураторе только есть

Klopik
Klopik
2 лет назад
Ответить на  fixin

Выбрать правильно структуру данных, ко-ко-ко…, еще раз, ВЫБРАТЬ ПРАВИЛЬНО СТРУКТУРУ ДАННЫХ, ну это же школьная задачка…

Klopik
Klopik
2 лет назад
Ответить на  fixin

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

Klopik
Klopik
2 лет назад
Ответить на  fixin

А за сколько ты сможешь написать проект личного кабинета на JAVе с сервисами Auth, Elasticsearch и сервисом с остальным барахлом?!, FIFO он мне тут пишет, юзер, гы, гы, гы. Хватит писать хуйню, 1с узкоспециализированная программа, майнкрафт ты на ней не напишеш. Это в 100 крат перевешиват чтоб ты там не писал И если с врачами сравнивать, то ты не стоматолог и не хирург, ты фельдшер, причем сельского такого масштаба.

klopik
klopik
2 лет назад
Ответить на  bob32

На самом деле для прохождения собесов много знаний не нужно, нужен просто особый скил — это джава кор + СУБД типа SQL, многопоток спрашивают, но по факту он не нужен + СПРИНГ и его производные + Хибер какой нить Мавен / Грэдл ну и Рест Айпи какой нить. И все. Те кто собесит — у них вопросы, как правило стандартные. Все это есть чтобы выучить. Собесы проходят через зуум, иногда даже с темным экраном. Т. е. открыл вопросы — спросили, помычал, нашел — ответил. Попадалово будет если лайфкодить придется или начнут копать. Вот например некоторые скрининг вопросы на собес Альфа-банка.… Подробнее »

Павел
Павел
2 лет назад
Ответить на  fixin

Что Леонтьев освоил из этого списка? Он как и ты даже не понял бы о чем его спрашивают… Его спрашивали чисто по нубовским вещам — доступным с курсов/книжек. А что он может знать про очереди, оркестраторы, сбор мусора — он всю жизнь правил печатные формы как типовой 1с-ник-коробейник-ипешник — дальше вглубь платформа никого не пускает

Павел
Павел
2 лет назад
Ответить на  fixin

А поичем здесь дэвопс? Осипов не строй из себя программиста. Ты 1с-ник. А это в современном мире — диагноз

Павел
Павел
2 лет назад
Ответить на  fixin

Я «не знаю» 1с как предмет последние 20 лет.

Klopik
Klopik
2 лет назад
Ответить на  fixin

просвети чем и что должен знать девопс)))

Фиксологика, однако
Фиксологика, однако
2 лет назад
Ответить на  fixin

Подсказываю.
Для n=1 последовательность имеет вид
1
Для n=2
2 1
2
Для каждого n сначала выписываешь все последовательности для чисел n-1, n-2, …, 2, 1.
Затем слева добавляется столбец из числа n.
Всего для каждого n кол-во последовательностей должно получаться 2 в степени (n-1) .

Последний раз редактировалось 2 лет назад Фиксологика, однако ем
Павел
Павел
2 лет назад

Это вам не в 1000-ый раз рисовать реализацию фифо и продавать рыбок из аквариума по методичкам из 1с — когда за тебя платформа думает… Накой хрен спрашивать про хэши — ну видно же что не студент и сам врядли тему копал сам. От нее в реальной разработке для уровня нуба ни холодно ни жарко… Задачки эти алгоритмические — вопрошающие сами то все помнят? Они же умные — это к ним устраиваются, а не они — с Леонтьева на бумажке задачку про последовательность, с них тоже на бумажке — реализацич красно-черного дерева… Сходил бы на курсы. Имел бы по гиту, докеру… Подробнее »

bob32
bob32
2 лет назад
Ответить на  fixin

Гордиться надо широтой знаний с достаточной глубиной. Если от железа до систем no/low code понимаешь как всё работает (не на пальцах а достаточно для осмысленных действий на всех уровнях), то гордиться можно.

Есть узкие спецы со знанием ассемблера, регистры могут шикарно знать. Преобразование Фурье на ассемблере со всеми оптимизациями напишут. Но шаг влево-вправо и всё. Так и с прикладниками. Широкий кругозор лучше дает понять как правильно решить прикладную задачу. Если ты кроме 1С ничего другого достаточно не знаешь, то решение будешь выбирать исходя из 1С а не исходя из особенностей задачи. Это не всегда правильный путь, хотя на практике работает.

Павел
Павел
2 лет назад
Ответить на  fixin

Его и спрашивали по «прикладухе». Присто 1с-никам носы вытирает платформа, а тут — все сами. И тут-то «автоматизаторы» которые кроме продажи абудевдуфов (или как у него рыба в роликах называлась) ничего не могут и потекли… Программисты «разными» в кровавом энтерпайзе быть не могут — все тоже самое — книги, заказы, коллекции. Кому ты эту дичь про «ассемблер» втираешь… Вы просто нихрена не знаете за пределами плыигуратора. Да и пофигуратор то «со словарем»

Павел
Павел
2 лет назад
Ответить на  fixin

Причем здесь ассемблер? Только внезапно выясняется, что без пофигуратора 1с-ник это ноль без палки.

FixinGnom
FixinGnom
2 лет назад

Сергей а с тобой то что? Ты когда в коттедж переедешь? Купишь квартиру? Ты такой же разбор про свою бы жизнь сделал. Столько всего было про успех, финансовую состоятельность, а на деле все это сводится к псто про вот этого чувака который захотел лучшей жизни и как тебе в Кучино весело от этого

Klopik
Klopik
2 лет назад
Ответить на  fixin

Тебе просто заведно, что вот молодой 1с ник брал большк тебя, но справедливо понял, что 1 с тупиковый путь и ушел в другие языки и правильно сделал. Иначе он таким же мастодонтом бы стал в 1с как и ты, неспособным, точнее не стремящемся к изучению новых языков программирования…. за человека надо радоваться. Конечно он неопытен, но как джуниору и на 120 нормально, через полгодо год выйдет на мидла, в зависимости от усидчивости, ну а там совсем другие деньги.

FixinGnom
FixinGnom
2 лет назад

Вот интересно а леонтьев этот вообще в состоянии запомнить последовательность цветов флага России? или он годится только для обучения языкам программирования?

DIM
DIM
1 год назад

Автор данного поста, патриотизм в тебе кипит? Живи спокойно.
Илья, толковый парень с большими перспективами и если он захотел зарабатывать больше, что здесь плохого!

razrab
razrab
5 месяцев назад

Илья — молодец! Всяческих ему благ!

71
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x